모듈: Mongo::ServerSelector

확장자:
ServerSelector
포함 항목:
ServerSelector
다음에 정의됨:
build/ruby-driver-v2.19/lib/mongo/server_selector.rb,
build/ruby-driver-v2.19/lib/mongo/server_selector/base.rb,
build/ruby-driver-v2.19/lib/mongo/server_selector/nearest.rb,
build/ruby-driver-v2.19/lib/mongo/server_selector/primary.rb,
빌드/루비 드라이버-v2.19/lib/mongo/server_selector/secondary.rb,
빌드/루비 드라이버-v2.19/lib/mongo/server_selector/primary_preferred.rb,
빌드/루비 드라이버-v2.19/lib/mongo/server_selector/secondary_preferred.rb

개요

기본 설정이 지정된 경우 객체 가 서버 를 선택할 수 있도록 하는 기능입니다.

이후:

  • 2.0.0

네임스페이스 아래에 정의됨

클래스: Base, Nearest, Primary, PrimaryPreferred, Secondary, SecondaryPreferred

상수 요약 접기

LOCAL_THRESHOLD =

가장 가까운 서버와 선택 대상으로 고려되는 다른 서버 간의 최대 지연 시간(초)입니다.

이후:

  • 2.0.0

0.015.동결
SERVER_SELECTION_TIMEOUT =

예외가 발생하기 전에 서버 선택을 차단 시간입니다.

이후:

  • 2.0.0

30.동결
SMALLEST_MAX_STALENESS_SECONDS =

허용되는 가장 작은 최대 비활성 값(초)입니다.

이후:

  • 2.4.0

90
PRIMARY =

프라이머리 읽기 설정.

이후:

  • 2.1.0

옵션::편집됨.신규(모드: :primary).동결
Preferences =

기호를 기반으로 하는 선택기 클래스에 대한 해시 조회

provided in configuration.

이후:

  • 2.0.0

{
  가장 가까운: Nearest,
  프라이머리: 기본,
  primary_preferred: PrimaryPreferred,
  보조: 보조,
  secondary_preferred: 세컨더리 선호
}.동결

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#get(preference = {}) ⇒ 객체

서버 선택기 객체를 만듭니다.

예시:

다음을 사용하여 세컨더리를 선택하기 위한 서버 선택기 객체를 가져옵니다.

specific tag sets.
Mongo::ServerSelector.get(:mode => :secondary, :tag_sets => [{'dc' => 'nyc'}])

매개변수:

  • 기본 설정 (해시) (기본값: {})

    서버 기본 설정입니다.

이후:

  • 2.0.0



75
76
77
78
79
# 파일 'build/ruby-driver-v2.19/lib/mongo/server_selector.rb', 줄 75

def get(기본 설정 = {})
  반환 기본 설정 만약 환경설정.values.포함?(기본 설정.클래스)
  mongo::Lint.validate_underscore_read_preference(기본 설정)
  환경설정.가져오기((기본 설정[:mode] || :primary).to_sym).신규(기본 설정)
end

#프라이머리객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

프라이머리 서버 선택기를 반환합니다.

이 메서드에 대한 호출은 결과 서버 선택기 객체가 캐시되고 매번 다시 생성되지 않는다는 점을 제외하면 'get(mode: :primary)'과 동일합니다.

이후:

  • 2.0.0



87
88
89
# 파일 'build/ruby-driver-v2.19/lib/mongo/server_selector.rb', 줄 87

def 기본
  프라이머리 ||= get(모드: :primary)
end