클래스: Mongo::Server::Description
- 상속:
-
객체
- 객체
- Mongo::Server::Description
- 다음에 정의됨:
- 빌드/ Ruby-driver-v2.19/lib/mongo/ 서버/description.rb,
빌드/ Ruby-driver-v2.19/lib/mongo/ 서버/description/features.rb,
빌드/ Ruby-driver-v2.19/lib/mongo/ 서버/description/load_balancer.rb
개요
hello 명령의 결과로 채워지는 서버 에 대한 설명을 나타냅니다.
참고: 알 수 없는 서버에는 와이어 버전이 없지만, 레거시 이유로 인해 와이어 버전이 없는 서버 의 min_wire_version 및 max_wire_version에 대해 0 을 반환합니다. 현재 운전자 는 서버 를 알 수 없을 때 명령을 구성하는 경우가 있으므로 min_wire_version 및 max_wire_version에 대한 참조가 nil이 되어서는 안 됩니다. 운전자 동작이 변경된 경우(jira.mongodb.org/browse/RUBY-1805), 이는 더 이상 필요하지 않을 수 있습니다.
네임스페이스 아래에 정의됨
클래스: 기능, LoadBalancer
상수 요약 접기
- 중재자 =
더 이상 사용되지 않습니다.
config에서 중재자 정보를 읽기 위한 상수입니다.
'중재자 전용'.동결
- 중재자 =
config에서 중재자 정보를 읽기 위한 상수입니다.
'중재자'.동결
- HIDDEN =
구성에서 숨겨진 정보를 읽기 위한 상수입니다.
'숨김'.동결
- HOSTS =
config에서 호스트 정보를 읽기 위한 상수입니다.
'hosts'.동결
- MESSAGE =
더 이상 사용되지 않습니다.
메시지 값의 키에 대한 상수입니다.
'msg'.동결
- MONGOS_MESSAGE =
더 이상 사용되지 않습니다.
샤딩된 클러스터 를 나타내는 메시지의 상수입니다.
'isdbgrid'.동결
- REPLICA_SET =
더 이상 사용되지 않습니다.
고스트 서버를 결정하기 위한 상수입니다.
'isreplicaset'.동결
- MAX_BSON_OBJECT_SIZE =
구성에서 최대 BSON 크기 정보를 읽기 위한 상수입니다.
'maxBsonObjectSize'.동결
- MAX_MESSAGE_BYTES =
구성에서 최대 메시지 크기 정보를 읽기 위한 상수입니다.
'maxMessageSizeBytes'.동결
- MAX_WIRE_VERSION =
최대 와이어 버전에 대한 상수입니다.
'maxWireVersion'.동결
- MIN_WIRE_VERSION =
최소 와이어 버전에 대한 상수입니다.
'minWireVersion'.동결
- MAX_WRITE_BATCH_SIZE =
최대 쓰기 배치 크기를 읽기 위한 상수입니다.
'maxWriteBatchSize'.동결
- LAST_WRITE =
lastWrite 하위 문서에 대한 상수입니다.
'lastWrite'.동결
- LAST_WRITE_DATE =
lastWrite 하위 문서의 lastWriteDate 필드에 대한 상수입니다.
'lastWriteDate'.동결
- ME =
me 필드 를 읽기 위한 상수입니다.
'me'.동결
- DEFAULT_MAX_WRITE_BATCH_SIZE =
기본 최대 쓰기 (write) 배치 크기입니다.
1000.동결
- LEGACY_WIRE_VERSION =
더 이상 사용되지 않습니다.
3.0 에서 제거될 예정입니다.
레거시 유선 프로토콜 버전입니다.
0.동결
- 패시브 =
config에서 패시브 정보를 읽기 위한 상수입니다.
'패시브'.동결
- 수동태 =
패시브 서버 목록을 읽기 위한 상수입니다.
'패시브'.동결
- PRIMARY =
더 이상 사용되지 않습니다.
config에서 프라이머리 정보를 읽기 위한 상수입니다.
'ismaster'.동결
- PRIMARY_HOST =
구성에서 프라이머리 호스팅하다 필드 를 읽기 위한 상수입니다.
'프라이머리'.동결
- SECONDARY =
더 이상 사용되지 않습니다.
구성에서 세컨더리 정보를 읽기 위한 상수입니다.
'secondary'.동결
- SET_NAME =
구성에서 복제본 세트 이름 정보를 읽기 위한 상수입니다.
'setName'.동결
- 태그 =
config에서 태그 정보를 읽기 위한 상수입니다.
'tags'.동결
- ELECTION_ID =
구성에서 ElectionId 정보를 읽기 위한 상수입니다.
'electionId'.동결
- SET_VERSION =
구성에서 setVersion 정보를 읽기 위한 상수입니다.
'setVersion'.동결
- LOCAL_TIME =
구성에서 localTime 정보를 읽기 위한 상수입니다.
'localTime'.동결
- OPERATION_TIME =
구성에서 operationTime 정보를 읽기 위한 상수입니다.
'operationTime'.동결
- LOGical_SESSION_TIMEOUT_MINUTES =
구성에서 logicalSessionTimeoutMinutes 정보를 읽기 위한 상수입니다.
'logicalSessionTimeoutMinutes'.동결
- CONNECTION_ID =
이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
config에서 connectionId 정보를 읽기 위한 상수입니다.
'connectionId'.동결
- EXCLUDE_FOR_COMPARISON =
두 설명을 비교할 때 제외할 필드입니다.
[ LOCAL_TIME, LAST_WRITE, OPERATION_TIME, 작업::CLUSTER_TIME, CONNECTION_ID, ].동결
인스턴스 속성 요약 접기
-
주소 #주소 ⇒ 주소
읽기 전용
주소 서버의 주소 입니다.
-
#average_round_trip_time ⇒ Float
읽기 전용
hello 호출을 완료하는 데 걸린 이동 평균 시간입니다.
-
#config ⇒ Hash
읽기 전용
hello 명령의 실제 결과입니다.
-
#last_update_monotime ⇒ Float
읽기 전용
비공개
이 서버 설명이 단조적 시계에 따라 생성된 시간입니다.
-
#last_update_time ⇒ 시간
읽기 전용
이 서버 설명이 생성된 시간입니다.
인스턴스 메서드 요약 접기
-
#==(기타) ⇒ 참, 거짓 (동의어: #eql?)
두 설명이 동일한지 확인합니다.
-
#중재자? ⇒ 참, 거짓
SDAM 사양에 따라 이 서버 가 중재자 인지 여부를 반환합니다.
-
#중재자 ⇒ Array<String>
복제본 세트 의 모든 중재자 목록을 가져옵니다.
-
#data_bearing? ⇒ 참, 거짓
이 설명이 데이터 보유 서버 에서 가져온 것인지(독립형, mongos, 프라이머리 또는 세컨더리).
-
# BSON:: ObjectId
구성에서 ElectionId를 가져옵니다.
-
기능 #기능 ⇒ 기능
기능 서버의 기능입니다.
-
#고스트? ⇒ 참, 거짓
SDAM 사양에 따라 이 서버가 고스트인지 여부입니다.
-
#숨김? ⇒ 참, 거짓
서버 가 숨겨져 있으면 true를 반환합니다.
-
#호스트 ⇒ Array<String>
복제본 세트의 모든 서버 목록을 가져옵니다.
-
#initialize(주소, config = {},average_round_trip_time: nil, load_balancer: false, force_load_balancer: false) ⇒ 설명
생성자
비공개
hello 명령의 결과에서 새 서버 설명을 인스턴스화하거나 알 수 없는 서버 및 로드밸런서 서버에 대한 자리 표시자 설명을 조작합니다.
-
#검사 ⇒ string
서버 설명을 검사합니다.
- #is_server?(서버) ⇒ 참, 거짓 사용 중단 더 이상 사용되지 않습니다.
-
#last_write_date ⇒ 시간
구성의 lastWrite 하위 문서에서 lastWriteDate를 가져옵니다.
- #list_server?(서버) ⇒ 참, 거짓 사용 중단 더 이상 사용되지 않습니다.
-
#load_balancer? ⇒ true | false
이 서버 가 로드 밸런서 인지 여부를 반환합니다.
-
#logical_session_timeout ⇒ Integer?
구성에서 logicalSessionTimeoutMinutes를 가져옵니다.
-
#max_bson_object_size ⇒ 정수
이 서버 버전에 대한 최대 BSON 객체 크기를 가져옵니다.
-
#max_message_size ⇒ 정수
이 서버 버전의 최대 메시지 크기를 가져옵니다.
-
#max_wire_version ⇒ 정수
최대 유선 버전을 가져옵니다.
-
#max_write_batch_size ⇒ 정수
쓰기의 최대 배치 크기를 가져옵니다.
-
#me ⇒ string
me 필드 값을 가져옵니다.
-
#me_mismatch? ⇒ 참, 거짓
주소 호스팅하다 와 me 필드 간에 불일치가 있는지 확인합니다.
-
#min_wire_version ⇒ 정수
최소 유선 버전을 가져옵니다.
-
#mongos? ⇒ 참, 거짓
SDAM 사양에 따라 이 서버 가 mongos 인지 여부를 반환합니다.
- #네? ⇒ 부울 비공개
-
#op_time ⇒ BSON::Timestamp
hello 응답의 optime 하위 문서에 있는 optime입니다.
-
#other? ⇒ 참, 거짓
SDAM 사양에 따라 서버 가 다른 서버인지 여부를 반환합니다.
-
#패시브? ⇒ 참, 거짓
서버 가 패시브인 경우 true를 반환합니다.
-
#패시브 ⇒ Array<String>
클러스터 의 패시브 서버 목록을 가져옵니다.
-
#프라이머리? ⇒ 참, 거짓
SDAM 사양에 따라 이 서버 가 프라이머리 서버인지 여부를 반환합니다.
-
#primary_host ⇒ string | nil
프라이머리 호스팅하다 의 주소 를 가져옵니다.
-
#replica_set_member? ⇒ 참, 거짓
이 설명이 복제본 세트 멤버에 해당합니까?
-
#replica_set_name ⇒ string?
서버 가 속한 복제본 세트 의 이름을 가져오고, 없는 경우 nil을 반환합니다.
-
#세컨더리? ⇒ 참, 거짓
SDAM 사양에 따라 이 서버 가 세컨더리 서버인지 여부를 반환합니다.
- #server_connection_id ⇒ 객체
-
#server_type ⇒ Symbol
서버 유형을 기호로 반환합니다.
- #server_version_gte?(version) ⇒ 부울 비공개
-
#서버 ⇒ Array<String>
클러스터 에 알려진 모든 서버의 목록을 가져옵니다.
-
#service_id ⇒ nil | 객체
서비스 ID(있는 경우)입니다.
-
#set_version ⇒ Integer
구성에서 setVersion을 가져옵니다.
-
#독립형? ⇒ 참, 거짓
SDAM 사양에 따라 이 서버 가 독립형 인지 여부를 반환합니다.
-
#태그 ⇒ 해시
서버 에 대해 구성된 태그를 가져옵니다.
-
#topology_version ⇒ TopologyVersion | nil
토폴로지 버전입니다.
-
#topology_version_gt?(other_desc) ⇒ true | false
비공개
이 설명의 토폴로지 버전이 잠재적으로 다른 설명의 토폴로지 버전보다 최신이거나 동일한지 여부를 반환합니다.
-
#topology_version_gte?(other_desc) ⇒ true | false
비공개
이 설명의 토폴로지 버전이 다른 설명의 토폴로지 버전보다 잠재적으로 최신인지 여부를 반환합니다.
-
#알 수 없음? ⇒ 참, 거짓
SDAM 사양에 따라 이 서버 가 알 수 없는 서버인지 여부를 반환합니다.
-
#wire_versions ⇒ 범위
서버 에 대해 지원되는 유선 버전의 범위 를 가져옵니다.
생성자 세부 정보
#initialize(address, config = {},average_round_trip_time: nil, load_balancer: false, force_load_balancer: false) ⇒ 설명
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
hello 명령의 결과에서 새 서버 설명을 인스턴스화하거나 알 수 없는 서버 및 로드밸런서 서버에 대한 자리 표시자 설명을 조작합니다.
220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 220 def 초기화(주소, config = {}, 평균 왕복 시간: nil, load_balancer: 거짓, force_load_balancer: 거짓 ) @address = 주소 @config = config @load_balancer = !!load_balancer @force_load_balancer = !!force_load_balancer @features = 기능.신규(Wire_versions, 나 || @address.to_s) @average_round_trip_time = 평균 왕복 시간 @last_update_time = 시간.지금.동결 @last_update_monotime = Utils.단조적 시간 만약 load_balancer # loadBalanced=true URI 옵션이 설정하다 있으면 운전자 는 # 통신하는 서버 가 serviceId를 설정하다 하지 않은 경우 작동합니다. # in ismaster/hello 응답. # # 현재로서는 에버그린에서 적절한 로드 밸런서 설정 을 실행 수 없습니다. # # 따라서 connect=:load_balancing Ruby 옵션을 대신 사용하는 경우 serviceId가 설정하다 되지 않은 경우 loadBalanced=true URI 옵션의 # # ismaster/hello 응답, 운전자 는 serviceId를 조작하고 # 자신을 다음 대상으로 보고하지 않는 서버 를 처리합니다. # 로드 밸런서 뒤에 있는 서버 로 로드 밸런서 뒤에 있습니다. # # 5.0+ 서버는 topologyVersion.processId를 제공해야 합니다. # 은 특정 프로세스 인스턴스 에만 적용됩니다. 이를 사용할 수 있습니다. # 필드 를 serviceId의 프록시로 사용합니다. # # 어떤 이유로든 topologyVersion이 제공되지 않으면 # 로컬에서 serviceId를 조작합니다. # # 두 경우 모두 실제 서버 에서 제공하는 serviceId는 # 로드 밸런서 는 BSON::ObjectId여야 합니다. 조작된 # 서비스 ID는 실제 ID와 구분하기 위한 문자열입니다. # 특히 processId는 BSON::ObjectId이기도 하지만 # 이는 string 가짜 서비스 임을 명확하게 하기 ID 위해 에 매핑됩니다. # # TODO: https://jira.mongodb.org/browse/RUBY-2881 이 완료되면 이를 제거합니다. 만약 좋아? && !service_id 하지 않는 한 force_load_balancer 올리다 오류::MissingServiceId, "#{주소.시드}의 서버 가 핸드셰이크 응답에 서비스 ID를 제공하지 않았습니다" end Fake_service_id = 만약 process_id = topology_version && topology_version['processId'] "프로세스:#{process_id}" other "가짜:#{rand(2**32-1)+1}" end @config = @config.merge('serviceId' => Fake_service_id) end end 만약 mongo::Lint.활성화? # 캐시 인스턴스 변수 미리 채우기 호스트 중재자 패시브 topology_version 동결 end end |
인스턴스 속성 세부 정보
#주소 ⇒ 주소 (읽기 전용)
주소 서버의 주소를 반환합니다.
285 286 287 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 285 def 주소 @address end |
#average_round_trip_time ⇒ Float (읽기 전용)
hello 호출을 완료하는 데 걸린 이동 평균 시간을 반환합니다.
303 304 305 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 303 def 평균 왕복 시간 @average_round_trip_time end |
#config ⇒ 해시 (읽기 전용)
hello 명령의 실제 결과를 반환합니다.
288 289 290 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 288 def config @config end |
#last_update_monotime ⇒ Float (읽기 전용)
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 서버 설명이 단조적 시계에 따라 생성된 시간입니다.
835 836 837 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 835 def last_update_monotime @last_update_monotime end |
#last_update_time ⇒ 시간 (읽기 전용)
이 시간은 성공적인 서버 확인 시간을 나타내지 않습니다.
이 서버 설명이 생성된 시간입니다.
서버 를 알 수 없음으로 표시하면 해당 설명과 last_update_time이 업데이트되기 때문입니다. 서버#last_scan을 사용하여 모니터가 서버 를 마지막으로 성공적으로 확인한 시간을 확인합니다.
826 827 828 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 826 def last_update_time @last_update_time end |
인스턴스 메서드 세부 정보
#==(기타) ⇒ true, false ~ 라고도 함: eql?
두 설명이 동일한지 확인합니다.
859 860 861 862 863 864 865 866 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 859 def ==(기타) 반환 거짓 만약 self.클래스 != 기타.클래스 반환 거짓 만약 알 수 없음? || 기타.알 수 없음? (config.키 + 기타.config.키).uniq.모두? do |k| config[k] == 기타.config[k] || EXCLUDE_FOR_COMPARISON.포함?(k) end end |
#중재자? ⇒ true, false
SDAM 사양에 따라 이 서버 가 중재자 인지 여부를 반환합니다.
313 314 315 316 317 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 313 def 중재자? 좋아? && config['중재자 전용'] == true && !!config['setName'] end |
#중재자 ⇒ Array<String>
복제본 세트 의 모든 중재자 목록을 가져옵니다.
327 328 329 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 327 def 중재자 @arbiters ||= (config[중재자] || []).map { |s| s.downcase } end |
#data_bearing? ⇒ true, false
이 설명이 데이터 보유 서버 에서 가져온 것인지(독립형, mongos, 프라이머리 또는 세컨더리).
789 790 791 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 789 def data_bearing? mongos? || 프라이머리? || 세컨더리? || 독립형? end |
# Election_id ⇒BSON :: ObjectId
구성에서 ElectionId를 가져옵니다.
475 476 477 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 475 def Election_id config[ELECTION_ID] end |
기능 #기능 ⇒ 기능
기능을 반환 서버.
298 299 300 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 298 def 기능 @features end |
#고스트? ⇒ true, false
SDAM 사양에 따라 이 서버가 고스트인지 여부입니다.
339 340 341 342 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 339 def ghost? 좋아? && config['isreplicaset'] == true end |
#숨김? ⇒ true, false
서버 가 숨겨져 있으면 true를 반환합니다.
352 353 354 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 352 def 숨겨진? 좋아? && !!config[숨김] end |
#호스트 ⇒ Array<String>
복제본 세트의 모든 서버 목록을 가져옵니다.
364 365 366 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 364 def 호스트 @hosts ||= (config[호스트] || []).map { |s| s.downcase } end |
#검사 ⇒ string
서버 설명을 검사합니다.
376 377 378 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 376 def 검사 "#<Mongo::Server:Description:0x#{object_id} config=#{config} average_round_trip_time=#{average_round_trip_time}>" end |
#is_server?(서버) ⇒ true, false
지정된 서버 의 설명입니다.
751 752 753 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 751 def is_server?(서버) 주소 == 서버.주소 end |
#last_write_date ⇒ 시간
구성의 lastWrite 하위 문서에서 lastWriteDate를 가져옵니다.
540 541 542 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 540 def last_write_date config[LAST_WRITE][LAST_WRITE_DATE] 만약 config[LAST_WRITE] end |
#list_server?(서버) ⇒ true, false
이 설명의 서버 목록에 포함된 서버입니다.
765 766 767 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 765 def list_server?(서버) 서버.포함?(서버.주소.to_s) end |
#load_balancer? ⇒ true | false
이 서버 가 로드 밸런서 인지 여부를 반환합니다.
293 294 295 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 293 def load_balancer? @load_balancer end |
#logical_session_timeout ⇒ Integer?
구성에서 logicalSessionTimeoutMinutes를 가져옵니다.
552 553 554 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 552 def logical_session_timeout config[LOGical_SESSION_TIMEOUT_MINUTES] 만약 config[LOGical_SESSION_TIMEOUT_MINUTES] end |
#max_bson_object_size ⇒ 정수
이 서버 버전에 대한 최대 BSON 객체 크기를 가져옵니다.
388 389 390 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 388 def max_bson_object_size config[MAX_BSON_OBJECT_SIZE] end |
#max_message_size ⇒ 정수
이 서버 버전의 최대 메시지 크기를 가져옵니다.
400 401 402 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 400 def config[MAX_MESSAGE_BYTES] end |
#max_wire_version ⇒ Integer
최대 유선 버전을 가져옵니다. 기본값은 0입니다.
424 425 426 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 424 def max_wire_version config[MAX_WIR_VERSION] || 0 end |
#max_write_batch_size ⇒ 정수
쓰기의 최대 배치 크기를 가져옵니다.
412 413 414 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 412 def max_write_batch_size config[MAX_WRITE_BATCH_SIZE] || DEFAULT_MAX_WRITE_BACH_SIZE end |
#me ⇒ string
me 필드 의 값은 서버 설명의 주소 와 다를 수 있습니다. 예를 예시 분할 수평선 구성에서 이런 일이 발생할 수 있습니다. SDAM 사양은 일부 상황에서 주소 가 일치하지 않는 서버를 제거하도록 요구합니다(예: 해당 서버 가 프라이머리 가 아닌 RS 멤버인 경우).
me 필드 값을 가져옵니다.
451 452 453 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 451 def 나 config[ME] end |
#me_mismatch? ⇒ true, false
주소 호스팅하다 와 me 필드 간에 불일치가 있는지 확인합니다.
801 802 803 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 801 def me_mismatch? !!(주소.to_s.downcase != 나.downcase 만약 나) end |
#min_wire_version ⇒ 정수
최소 유선 버전을 가져옵니다. 기본값은 0입니다.
436 437 438 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 436 def min_wire_version config[MIN_WIR_VERSION] || 0 end |
#mongos? ⇒ true, false
SDAM 사양에 따라 이 서버 가 mongos 인지 여부를 반환합니다.
564 565 566 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 564 def mongos? 좋아? && config['msg'] == 'isdbgrid' end |
#네? ⇒ 부울
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
725 726 727 728 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 725 def 좋아? config[작업::결과::확인] && config[작업::결과::확인] == 1 || 거짓 end |
#op_time ⇒ BSON::Timestamp
hello 응답의 optime 하위 문서에 있는 optime입니다.
810 811 812 813 814 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 810 def op_time 만약 config['lastWrite'] && config['lastWrite']['optime'] config['lastWrite']['optime']['ts'] end end |
#other? ⇒ true, false
SDAM 사양에 따라 서버 가 다른 서버인지 여부를 반환합니다.
576 577 578 579 580 581 582 583 584 585 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 576 def 기타? # SDAM 사양은 "기타"가 무엇을 의미하는지 약간 혼동됩니다. # 하지만 'RSOther'라고 부르며, 이는 RS가 아닌 멤버를 의미합니다. # 는 '기타'가 될 수 없습니다. 좋아? && !!config['setName'] && ( config['숨김'] == true || !프라이머리? && !세컨더리? && !중재자? ) end |
#패시브? ⇒ true, false
서버 가 패시브인 경우 true를 반환합니다.
595 596 597 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 595 def 패시브? 좋아? && !!config[패시브] end |
#패시브 ⇒ Array<String>
클러스터 의 패시브 서버 목록을 가져옵니다.
607 608 609 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 607 def 패시브 @passives ||= (config[수동태] || []).map { |s| s.downcase } end |
#프라이머리? ⇒ true, false
SDAM 사양에 따라 이 서버 가 프라이머리 서버인지 여부를 반환합니다.
631 632 633 634 635 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 631 def 프라이머리? 좋아? && (config['ismaster'] == true || config['isWritablePrimary'] == true ) && !!config['setName'] end |
#primary_host ⇒ string | nil
프라이머리 호스팅하다 의 주소 를 가져옵니다.
619 620 621 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 619 def primary_host config[PRIMARY_HOST] && config[PRIMARY_HOST].downcase end |
#replica_set_member? ⇒ true, false
이 설명이 복제본 세트 멤버에 해당합니까?
778 779 780 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 778 def replica_set_member? 좋아? && !(독립형? || mongos?) end |
#replica_set_name ⇒ string?
서버 가 속한 복제본 세트 의 이름을 가져오고, 없는 경우 nil을 반환합니다.
646 647 648 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 646 def replica_set_name config[SET_NAME] end |
#세컨더리? ⇒ true, false
SDAM 사양에 따라 이 서버 가 세컨더리 서버인지 여부를 반환합니다.
670 671 672 673 674 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 670 def 세컨더리? 좋아? && config['secondary'] == true && !!config['setName'] end |
#server_connection_id ⇒ 객체
838 839 840 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 838 def server_connection_id config['connectionId'] end |
#server_type ⇒ 기호
서버 유형을 기호로 반환합니다.
684 685 686 687 688 689 690 691 692 693 694 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 684 def server_type 반환 :load_balancer 만약 load_balancer? 반환 : 중재자 만약 중재자? 반환 :ghost 만약 ghost? 반환 :sharded 만약 mongos? 반환 :primary 만약 프라이머리? 반환 :secondary 만약 세컨더리? 반환 : 독립형 만약 독립형? 반환 : other 만약 기타? :unknown end |
#server_version_gte?(version) ⇒ Boolean
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 870 def server_version_gte?(버전) require_wv = case 버전 when '7.0' 21 when '6.0' 17 when '5.2' 15 when '5.1' 14 when '5.0' 12 when '4.4' 9 when '4.2' 8 when '4.0' 7 when '3.6' 6 when '3.4' 5 when '3.2' 4 when '3.0' 3 when '2.6' 2 other 올리다 ArgumentError, "가짜 필수 버전 #{버전}" end 만약 load_balancer? # 로드 밸런서와 통신하는 경우 모니터링이 이루어지지 않습니다. # 로드 밸런서 뒤에 어떤 서버 가 있는지 알 수 없습니다. # 모든 것이 지원된다고 가정합니다. # TODO RUBY-2220 구현 시 이 항목을 제거 합니다. 반환 true end require_wv >= min_wire_version && require_wv <= max_wire_version end |
#서버 ⇒ Array<String>
클러스터 에 알려진 모든 서버의 목록을 가져옵니다.
658 659 660 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 658 def 서버 호스트 + 중재자 + 패시브 end |
#service_id ⇒ nil | 객체
서비스 ID(있는 경우)를 반환합니다.
845 846 847 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 845 def service_id config['serviceId'] end |
#set_version ⇒ Integer
구성에서 setVersion을 가져옵니다.
487 488 489 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 487 def set_version config[SET_VERSION] end |
#독립형? ⇒ true, false
SDAM 사양에 따라 이 서버 가 독립형 인지 여부를 반환합니다.
704 705 706 707 708 709 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 704 def 독립형? 좋아? && config['msg'] != 'isdbgrid' && config['setName'].nil? && config['isreplicaset'] != true end |
#태그 ⇒ 해시
서버 에 대해 구성된 태그를 가져옵니다.
463 464 465 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 463 def config[태그] || {} end |
#topology_version ⇒ TopologyVersion | nil
토폴로지 버전을 반환합니다.
492 493 494 495 496 497 498 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 492 def topology_version 하지 않는 한 정의됨?(@topology_version) @topology_version = config['topologyVersion'] && 토폴로지 버전.신규(config['topologyVersion']) end @topology_version end |
#topology_version_gt?(other_desc) ⇒ true | false
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 설명의 토폴로지 버전이 잠재적으로 다른 설명의 토폴로지 버전보다 최신이거나 동일한지 여부를 반환합니다.
508 509 510 511 512 513 514 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 508 def topology_version_gt?(other_desc) 만약 topology_version.nil? || other_desc.topology_version.nil? true other topology_version.gt?(other_desc.topology_version) end end |
#topology_version_gte?(other_desc) ⇒ true | false
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
이 설명의 토폴로지 버전이 다른 설명의 토폴로지 버전보다 잠재적으로 최신인지 여부를 반환합니다.
524 525 526 527 528 529 530 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 524 def topology_version_gte?(other_desc) 만약 topology_version.nil? || other_desc.topology_version.nil? true other topology_version.gte?(other_desc.topology_version) end end |
#알 수 없음? ⇒ true, false
SDAM 사양에 따라 이 서버 가 알 수 없는 서버인지 여부를 반환합니다.
719 720 721 722 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 719 def 알 수 없음? 반환 거짓 만약 load_balancer? config.비어 있나요? || config.키 == %w(topologyVersion) || !좋아? end |
#wire_versions ⇒ 범위
서버 에 대해 지원되는 유선 버전의 범위 를 가져옵니다.
738 739 740 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/server/description.rb', 줄 738 def Wire_versions min_wire_version..max_wire_version end |