Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/ / /
Go 드라이버
/ /

클러스터 설정 사용자 지정

이 가이드 에서는 고 (Go) 운전자 클러스터를 관리하는 방법과 클러스터 설정을 사용자 지정하는 방법을 학습 수 있습니다.

Client 인스턴스 만들 때 연결 문자열 또는 ClientOptions 구조체를 사용하여 클러스터에 대한 설정을 지정할 수 있습니다. Connection String 또는 ClientOptions 탭 선택하여 사용 가능한 옵션을 확인합니다.

다음 표에서는 MongoDB cluster 와 상호 작용할 때 드라이버의 동작을 수정하기 위해 연결 문자열 에서 사용할 수 있는 매개변수에 대해 설명합니다.

Parameter
설명

serverSelectionTimeoutMS

오류가 발생하기 전에 운전자 서버 사용할 수 있을 때까지 기다리는 최대 시간을 지정합니다.

기본값: 30 초

localThresholdMS

서버 선택을 위한 최대 지연 시간 (밀리초)을 지정합니다.

기본값: 15 밀리초

replicaSet

연결한 복제본 세트의 이름을 지정합니다.

directConnection

복제본 세트 또는 샤딩된 클러스터 우회하여 단일 서버 에 직접 연결할지 여부를 지정합니다.

기본값입니다: false

loadBalanced

운전자 로드 밸런서 사용하여 MongoDB 에 연결하는지 여부를 지정합니다. true로 설정하다 하면 운전자 로드 밸런서 통해 연결하고 있다고 가정합니다.

다음 요구 사항을 충족하는 경우에만 이 옵션을 true로 설정할 수 있습니다.

  • 호스팅하다 이름을 하나만 지정합니다.

  • 복제본 세트 에 연결하지 않습니다.

  • srvMaxHosts 옵션이 설정되지 않았거나 0값을 가집니다.

  • directConnection 옵션이 설정되지 않았거나 false값을 가집니다.

기본값입니다: false

srvServiceName

운전자 시드 목록 구성하기 위해 검색하는SRV 리소스 레코드의 서비스 이름을 지정합니다. 이 옵션을 사용하려면 연결 문자열에 DNS 시드 목록 연결 형식 을 사용해야 합니다.

다음 표에서는 ClientOptions 구조체에 연결하여 드라이버의 동작을 수정할 수 있는 몇 가지 메서드를 설명합니다.

메서드
설명

SetServerSelectionTimeout()

오류가 발생하기 전에 운전자 서버 사용할 수 있을 때까지 기다리는 최대 시간을 지정합니다.

기본값: 30 초

SetLocalThreshold()

서버 선택을 위한 최대 지연 시간 (밀리초)을 지정합니다.

기본값: 15 밀리초

SetReplicaSet()

연결한 복제본 세트의 이름을 지정합니다.

SetDirect()

복제본 세트 또는 샤딩된 클러스터 우회하여 단일 서버 에 직접 연결할지 여부를 지정합니다.

기본값입니다: false

SetLoadBalanced()

운전자 로드 밸런서 사용하여 MongoDB 에 연결하는지 여부를 지정합니다. true로 설정하다 하면 운전자 로드 밸런서 통해 연결하고 있다고 가정합니다.

다음 요구 사항을 충족하는 경우에만 이 옵션을 true로 설정할 수 있습니다.

  • 호스팅하다 이름을 하나만 지정합니다.

  • 복제본 세트 에 연결하지 않습니다.

  • srvMaxHosts 옵션이 설정되지 않았거나 0값을 가집니다.

  • directConnection 옵션이 설정되지 않았거나 false값을 가집니다.

기본값입니다: false

SetSRVServiceName()

운전자 시드 목록 구성하기 위해 검색하는 SRV 리소스 레코드의 사용자 지정 서비스 이름을 지정합니다. SRV 검색에서 사용자 지정 SRV 서비스 이름을 사용하려면 ApplyURI()를 호출하기 전에 이 함수를 호출해야 합니다.

사용 가능한 메서드에 대해 자세히 학습하려면 API 설명서 섹션을 참조하세요.

해당 예시 보려면 Connection String 또는 ClientOptions 탭 선택합니다.

다음 코드는 연결 문자열 사용하여 최대 서버 선택 시간 제한을 10 초로, 로컬 임계값을 20 밀리초로 구성합니다.

const uri = "mongodb://localhost:27017/?serverSelectionTimeoutMS=10000&localThresholdMS=20"

다음 코드는 클라이언트 만들고 연결 문자열 ApplyURI() 메서드에 전달합니다.

client, err := mongo.Connect(options.Client().ApplyURI(uri))
if err != nil {
log.Fatal(err)
}

다음 코드는 클라이언트 생성하고 최대 서버 선택 시간 제한이 10 초이고 로컬 임계값이 20 밀리초인 클러스터 옵션을 설정합니다.

clientOptions := options.Client().
ApplyURI(uri).
SetServerSelectionTimeout(10 * time.Second).
SetLocalThreshold(20 * time.Millisecond)
client, err := mongo.Connect(clientOptions)
if err != nil {
log.Fatal(err)
}

이 가이드 의 메서드 및 유형에 대해 자세히 학습 다음 API 문서를 참조하세요.

돌아가기

네트워크 트래픽 압축

이 페이지의 내용