개요
이 페이지에서는 Go 드라이버에서 사용할 수 있는 연결 옵션과 이를 MongoDB 연결에 적용하는 방법을 설명합니다.
연결 옵션 지정 방법
다음 섹션에서는 연결 문자열 또는 ClientOptions 구조체를 사용하여 연결 옵션을 지정하는 방법을 설명합니다.
연결 문자열 사용
ClientOptions 구조체를 Connect() 메서드에 전달하여 연결 문자열에서 연결 옵션을 지정할 수 있습니다. 연결 문자열에서 <name>=<value> 쌍으로 문자열에 연결 옵션을 포함할 수 있습니다. 다음 예시에서 연결 문자열에는 값이 60000 밀리초인 connectTimeoutMS 옵션과 값이 true인 tls 옵션이 포함되어 있습니다.
const uri = "mongodb+srv://localhost:27017/?connectTimeoutMS=60000&tls=true" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
ClientOptions 구조 사용
연결 옵션을 ClientOptions 구조체에 연결하여 연결 설정을 구성할 수도 있습니다. 이러한 방식으로 연결을 구성하면 런타임에 설정을 더 쉽게 변경할 수 있고, 컴파일 중에 오류를 포착하는 데 도움이 되며, 연결 문자열보다 더 많은 구성 옵션을 제공합니다.
다음 코드 예시는 SetTLSConfig() 메서드에 빈 tls.Config 구조체를 전달하여 Timeout 옵션을 60 초로 설정하고 TLS를 활성화합니다.
opts := options.Client(). SetConnectTimeout(60 * time.Second). SetTLSConfig(&tls.Config{}) client, _ := mongo.Connect(opts)
복제본 세트 옵션
직접 연결
모든 작업을 호스팅하다 로 강제 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 운전자 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대해 자세히 학습 MongoDB Server 매뉴얼의 연결 문자열 가이드 참조하세요.
호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false(으)로 설정하다 해야 합니다.
데이터 유형: bool
기본값: false
예시:
const uri = "mongodb://localhost:27017/?directConnection=true" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
복제본 세트
연결할 복제본 세트의 이름입니다.
데이터 유형: string
기본값: nil
예시:
const uri = "mongodb://localhost:27017/?replicaSet=yourReplicaSet" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
직접 연결
모든 작업을 호스팅하다 로 강제 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 운전자 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대해 자세히 학습 MongoDB Server 매뉴얼의 연결 문자열 가이드 참조하세요.
호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false(으)로 설정하다 해야 합니다.
데이터 유형: bool
기본값: false
예시:
opts := options.Client(). SetDirect(true) client, _ := mongo.Connect(opts)
복제본 세트
연결할 복제본 세트의 이름입니다.
데이터 유형: string
기본값: nil
예시:
opts := options.Client(). SetReplicaSet("yourReplicaSet") client, _ := mongo.Connect(opts)
TLS 옵션
TLS 활성화
서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.
데이터 유형: bool
기본값: nil
예시:
const uri = "mongodb://localhost:27017/?tls=true" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
인증서 해지 비활성화
tlsDisableCertificateRevocationCheck 옵션은 TLS 연결에 대한 인증서 해지 확인을 비활성화합니다. 이 옵션을 true로 설정하다 운전자 인증서의 해지 상태를 확인하지 않지만 인증서 체인과 호스트 이름의 유효성은 계속 검사합니다. 이 옵션을 설정하면 false로 설정하다 경우에도 TLS가 암시적으로 활성화됩니다. 이 옵션을 tlsInsecure 또는 tlsDisableOCSPEndpointCheck와 결합하지 마세요.
데이터 유형: bool
기본값: false
예시:
uri := os.Getenv("MONGODB_URI") if uri == "" { log.Fatal("Set your 'MONGODB_URI' environment variable") } // Use an ampersand instead of a question mark if the connection string // already contains query options. separator := "?" if strings.Contains(uri, "?") { separator = "&" } uriOptions := options.Client(). ApplyURI(uri + separator + "tlsDisableCertificateRevocationCheck=true")
TLS 활성화
서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.
데이터 유형: tls.Config
기본값: false
예시:
opts := options.Client(). SetTLSConfig(&tls.Config{}) client, _ := mongo.Connect(opts)
인증서 해지 비활성화
SetDisableCertificateRevocationCheck() 메서드는 TLS 연결에 대한 인증서 해지 확인을 비활성화합니다. 이 옵션을 true로 설정하다 운전자 인증서의 해지 상태를 확인하지 않지만 인증서 체인과 호스트 이름의 유효성은 계속 검사합니다. 이 옵션을 설정해도 TLS가 암시적으로 활성화 는 않습니다. 이 옵션을 tlsInsecure 또는 tlsDisableOCSPEndpointCheck와 결합하지 마세요.
데이터 유형: bool
기본값: false
예시:
settingsOptions := options.Client(). SetDisableCertificateRevocationCheck(true)
TLS 옵션에 대한 자세한 내용은 연결에서 TLS 활성화 가이드를 참조하세요.
타임아웃 옵션
ConnectTimeout
시간이 초과하기 전에 드라이버가 서버에 단일 TCP 소켓 연결을 설정하려고 시도하는 시간 길이.
데이터 유형: 음수가 아닌 int
기본값: 30000 밀리초
예시:
const uri = "mongodb://localhost:27017/?connectTimeoutMS=60000" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
시간 초과
timeoutMS 옵션은 클라이언트 에서 실행 단일 작업이 오류를 반환하기 전에 실행할 수 있는 시간을 지정합니다.
데이터 유형: 음수가 아닌 int
기본값: nil
예시:
const uri = "mongodb://localhost:27017/?timeoutMS=30000" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
ConnectTimeout
시간이 초과하기 전에 드라이버가 서버에 단일 TCP 소켓 연결을 설정하려고 시도하는 시간 길이.
데이터 유형: time.Duration
기본값: 30 초
예시:
opts := options.Client(). SetConnectTimeout(60 * time.Second) client, _ := mongo.Connect(opts)
시간 초과
SetTimeout() 메서드는 클라이언트 에서 실행 단일 작업이 오류를 반환하기 전에 실행할 수 있는 시간을 지정합니다.
데이터 유형: time.Duration
기본값: nil
예시:
opts := options.Client(). SetTimeout(30 * time.Second) client, _ := mongo.Connect(opts)
압축 옵션
압축기
서버에 전송되거나 서버에서 수신되는 유선 프로토콜 메시지에 대한 선호 압축 유형(순서 대로). 선택 사항 빌드 시간 종속성으로 "snappy", "zlib", "zstd"를 활성화할 수 있습니다. 드라이버는 서버가 지원하는 이러한 압축 유형 중 첫 번째 것을 사용합니다.
데이터 유형: string (쉼표로 구분된 값)
기본값: nil
예시:
const uri = "mongodb://localhost:27017/?compressors=zlib,snappy" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
zlibCompressionLevel
zlibCompressionLevel 옵션은 zlib이 사용할 압축 수준을 설정합니다. zlib가 ApplyURI 또는 SetCompressors를 통해 압축기로 지정되지 않은 경우 이 옵션은 무시됩니다. 이 옵션은 -1 ~ 9 사이의 정수 값을 사용할 수 있습니다.
-1: (기본값).zlib은 기본값 압축 수준(일반적으로6)을 사용합니다.0: 압축이 없습니다.1: 속도는 가장 빠르지만 압축률은 가장 낮습니다.9: 압축률은 가장 높지만 속도가 가장 느립니다.
데이터 유형: int
기본값: -1
예시:
const uri = "mongodb://localhost:27017/?compressors=zlib&zlibCompressionLevel=6" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
Zstandard 압축 수준
zstdCompressionLevel 옵션은 zstd이 사용할 압축 수준을 설정합니다. zstd가 ApplyURI 또는 SetCompressors를 통해 압축기로 지정되지 않은 경우 이 옵션은 무시됩니다. 이 옵션은 1와 20 사이의 정수 값을 허용합니다:
1: 속도는 가장 빠르지만 압축률은 가장 낮습니다.20: 압축률은 가장 높지만 속도가 가장 느립니다.
데이터 유형: int
기본값: 6
예시:
const uri = "mongodb://localhost:27017/?compressors=zstd&zstdCompressionLevel=6" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
압축기
서버에 전송되거나 서버에서 수신되는 유선 프로토콜 메시지에 대한 선호 압축 유형(순서 대로). 선택 사항 빌드 시간 종속성으로 "snappy", "zlib", "zstd"를 활성화할 수 있습니다. 드라이버는 서버가 지원하는 이러한 압축 유형 중 첫 번째 것을 사용합니다.
데이터 유형: []string
기본값: nil
예시:
opts := options.Client(). SetCompressors([]string{"zlib", "snappy"}) client, _ := mongo.Connect(opts)
zlibCompressionLevel
SetZlibLevel() 메서드는 사용할 zlib의 압축 수준을 설정합니다. zlib가 ApplyURI 또는 SetCompressors를 통해 압축기로 지정되지 않은 경우 이 옵션은 무시됩니다. 이 옵션은 -1 ~ 9 사이의 정수 값을 사용할 수 있습니다.
-1: (기본값).
zlib은 기본 압축 수준(일반적으로6)을 사용합니다.0: 압축하지 않습니다.
1: 속도가 가장 빠르지만 압축률은 가장 낮습니다.
9: 압축률은 가장 높지만 속도가 가장 느립니다.
데이터 유형: int
기본값: -1
예시:
opts := options.Client(). SetCompressors([]string{"zlib"}). SetZlibLevel(6) client, _ := mongo.Connect(opts)
Zstandard 압축 수준
SetZstdLevel() 메서드는 사용할 zstd의 압축 수준을 설정합니다. zstd가 ApplyURI 또는 SetCompressors를 통해 압축기로 지정되지 않은 경우 이 옵션은 무시됩니다. 이 옵션은 1와 20 사이의 정수 값을 허용합니다:
데이터 유형: int
기본값: 6
예시:
opts := options.Client(). SetCompressors([]string{"zstd"}). SetZstdLevel(8) client, _ := mongo.Connect(opts)
압축에 대한 자세한 내용은 네트워크 트래픽 압축 가이드 참조하세요.
연결 풀 옵션
maxPoolSize
드라이버가 연결 풀에서 생성할 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다.
데이터 유형: 음수가 아닌 int
기본값: 100
예시:
const uri = "mongodb://localhost:27017/?maxPoolSize=150" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
minPoolSize
작업이 발생하지 않는 경우에도 드라이버가 연결 풀에서 생성하고 유지하는 연결 수입니다. 이 카운트에는 사용 중인 연결이 포함됩니다.
데이터 유형: 음수가 아닌 int
기본값: 0
예시:
const uri = "mongodb://localhost:27017/?minPoolSize=3" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
MaxConnectionIdleTime
드라이버가 연결을 닫기 전에 연결이 유휴 상태로 지속될 수 있는 시간입니다.
데이터 유형: 음수가 아닌 int
기본값: 0
예시:
const uri = "mongodb://localhost:27017/?maxIdleTimeMS=8000" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
MaxConnecting
maxConnecting 옵션은 연결 풀 동시에 설정할 수 있는 최대 연결 수를 설정합니다.
데이터 유형: 음수가 아닌 int
기본값: 2
예시:
const uri = "mongodb://localhost:27017/?maxConnecting=3" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
maxPoolSize
드라이버가 연결 풀에서 생성할 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다.
데이터 유형: 음수가 아닌 uint64
기본값: 100
예시:
opts := options.Client(). SetMaxPoolSize(150) client, _ := mongo.Connect(opts)
minPoolSize
작업이 발생하지 않는 경우에도 드라이버가 연결 풀에서 생성하고 유지하는 연결 수입니다. 이 카운트에는 사용 중인 연결이 포함됩니다.
데이터 유형: 음수가 아닌 uint64
기본값: 0
예시:
opts := options.Client(). SetMinPoolSize(3) client, _ := mongo.Connect(opts)
MaxConnectionIdleTime
드라이버가 연결을 닫기 전에 연결이 유휴 상태로 지속될 수 있는 시간입니다.
데이터 유형: time.Duration
기본값: 0
예시:
opts := options.Client(). SetMaxConnIdleTime(8 * time.Second) client, _ := mongo.Connect(opts)
MaxConnecting
SetMaxConnecting() 메서드는 연결 풀 동시에 설정할 수 있는 최대 연결 수를 설정합니다.
데이터 유형: 음수가 아닌 uint64
기본값: 2
예시:
opts := options.Client(). SetMaxConnecting(3) client, _ := mongo.Connect(opts)
연결 풀에 대해 자세히 학습 연결 풀 가이드 참조하세요.
쓰기 고려 옵션
쓰기 고려
쓰기 고려 (write concern) 의 w 구성 요소는 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자와 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습 MongoDB Server 매뉴얼의 쓰기 고려를 참조하세요.
데이터 유형: int or string
기본값: 1 or "majority"
예시:
const uri = "mongodb://localhost:27017/?w=2" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
쓰기 고려
쓰기 고려 (write concern) 의 w 구성 요소는 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자와 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습 MongoDB Server 매뉴얼의 쓰기 고려를 참조하세요.
데이터 유형: writeconcern.WriteConcern
기본값: 1 or "majority"
예시:
wc := &writeconcern.WriteConcern{ W: 2, } opts := options.Client().SetWriteConcern(wc) client, _ := mongo.Connect(opts)
읽기 고려 옵션
readConcern
클라이언트의 읽기 고려 (read concern) 수준입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 고려 참조를 참조하세요.
데이터 유형: string
기본값: local
예시:
const uri = "mongodb://localhost:27017/?readConcernLevel=majority" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
readConcern
클라이언트의 읽기 고려 (read concern) 수준입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 고려 참조를 참조하세요.
데이터 유형: readconcern.ReadConcern
기본값: nil
예시:
opts := options.Client(). SetReadConcern(readconcern.Majority()) client, _ := mongo.Connect(opts)
읽기 기본 설정 옵션
인증 옵션
인증 메커니즘
드라이버가 MongoDB Server에 대해 인증하는 메커니즘입니다. 인증 메커니즘을 지정하지 않으면 드라이버는 서버 버전에 따라 SCRAM-SHA-1 또는 SCRAM-SHA-256를 사용합니다.
사용 가능한 인증 메커니즘에 대해 자세히 알아보려면 인증 메커니즘 가이드를 참조하세요.
데이터 유형: string
기본값: 비어 있음(인증 없음) 또는 인증이 활성화되면 SCRAM-SHA-256
예시:
const uri = "mongodb://user:password@localhost:27017/?authMechanism=PLAIN&authSource=admin" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
인증 메커니즘
드라이버가 MongoDB Server에 대해 인증하는 메커니즘입니다. 인증 메커니즘을 지정하지 않으면 드라이버는 서버 버전에 따라 SCRAM-SHA-1 또는 SCRAM-SHA-256를 사용합니다.
사용 가능한 인증 메커니즘에 대해 자세히 알아보려면 인증 메커니즘 가이드를 참조하세요.
데이터 유형: Credential
기본값: 비어 있음(인증 없음) 또는 인증이 활성화되면 SCRAM-SHA-256
예시:
credential := options.Credential{ AuthMechanism: "PLAIN", AuthSource: "admin", Username: "user", Password: "password", } opts := options.Client().SetAuth(credential) client, _ := mongo.Connect(opts)
서버 선택 옵션
ServerSelectionTimeout
드라이버가 시간이 초과되기 전에 서버 선택을 시도하는 시간입니다.
데이터 유형: 음수가 아닌 int
기본값: 30000 밀리초
예시:
const uri = "mongodb://localhost:27017/?serverSelectionTimeoutMS=40000" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
LocalThreshold
서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다.
데이터 유형: 음수가 아닌 int
기본값: 15 밀리초
예시:
const uri = "mongodb://localhost:27017/?localThresholdMS=20000" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
ServerSelectionTimeout
드라이버가 시간이 초과되기 전에 서버 선택을 시도하는 시간입니다.
데이터 유형: time.Duration
기본값: 30 초
예시:
opts := options.Client(). SetServerSelectionTimeout(40 * time.Second) client, _ := mongo.Connect(opts)
LocalThreshold
서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다.
데이터 유형: time.Duration
기본값: 15 밀리초
예시:
opts := options.Client(). SetLocalThreshold(20 * time.Millisecond) client, _ := mongo.Connect(opts)
재시도 옵션
읽기 재시도
재시도 가능 읽기를 활성화합니다.
데이터 유형: bool
기본값: true
예시:
const uri = "mongodb://localhost:27017/?retryReads=false" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
RetryWrites
재시도 가능 쓰기를 활성화합니다.
데이터 유형: bool
기본값: true
예시:
const uri = "mongodb://localhost:27017/?retryWrites=false" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
최대 적응 재시도
maxAdaptiveRetries 옵션은 서버 측 과부하 오류로 인해 실패한 작업을 운전자 재시도해야 하는 최대 횟수를 설정합니다.
데이터 유형: 음수가 아닌 int
기본값: 2
예시:
const uri = "mongodb://localhost:27017/?maxAdaptiveRetries=3" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
읽기 재시도
재시도 가능 읽기를 활성화합니다.
데이터 유형: bool
기본값: true
예시:
opts := options.Client(). SetRetryReads(false) client, _ := mongo.Connect(opts)
RetryWrites
재시도 가능 쓰기를 활성화합니다.
데이터 유형: bool
기본값: true
예시:
opts := options.Client(). SetRetryWrites(false) client, _ := mongo.Connect(opts)
최대 적응 재시도
SetMaxAdaptiveRetries() 메서드는 서버 측 과부하 오류로 인해 실패한 작업을 운전자 재시도해야 하는 최대 횟수를 설정합니다.
데이터 유형: 음수가 아닌 uint
기본값: 2
예시:
opts := options.Client(). SetMaxAdaptiveRetries(3) client, _ := mongo.Connect(opts)
기타 옵션
애플리케이션 이름
연결 핸드쉐이크의 일부로 드라이버가 클라이언트 메타데이터에 서버에 전달하는 앱 이름입니다. 서버는 연결이 설정되면 이 값을 MongoDB 로그에 인쇄합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다.
데이터 유형: string
기본값: nil
예시:
const uri = "mongodb://localhost:27017/?appName=yourAppName" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
로드 밸런싱
운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.
호스팅하다 이름을 하나만 지정합니다.
복제본 세트 에 연결하지 않습니다.
SrvMaxHosts속성 사용하지 않습니다.DirectConnection속성 사용하지 않습니다.
데이터 유형: bool
기본값: false
예시:
const uri = "mongodb://localhost:27017/?loadBalanced=true" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
SRVmax 호스트
시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다.
이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.
데이터 유형: 음수가 아닌 int
기본값: 0
예시:
opts := options.Client(). SetSRVMaxHosts(5) client, _ := mongo.Connect(opts)
srvServiceName
운전자 시드 목록을 구성하기 위해 검색하는 SRV 리소스 레코드의 서비스 이름입니다. 운전자 서비스 이름을 사용하여 다음 형식과 일치하는 SRV URI를 생성합니다.
_{srvServiceName}._tcp.{hostname}.{domainname}
이 속성 검색 및 폴링에서 SRV 조회에 대한 기본값 서비스 이름을 재정의합니다. 기본값 은 "mongodb"입니다.
이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.
데이터 유형: string
기본값: mongodb
예시:
const uri = "mongodb+srv://localhost/?srvServiceName=yourServiceName" client, _ := mongo.Connect(options.Client().ApplyURI(uri))
애플리케이션 이름
연결 핸드쉐이크의 일부로 드라이버가 클라이언트 메타데이터에 서버에 전달하는 앱 이름입니다. 서버는 연결이 설정되면 이 값을 MongoDB 로그에 인쇄합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다.
데이터 유형: string
기본값: nil
예시:
opts := options.Client(). SetAppName("yourAppName") client, _ := mongo.Connect(opts)
로드 밸런싱
운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.
호스팅하다 이름을 하나만 지정합니다.
복제본 세트 에 연결하지 않습니다.
SrvMaxHosts속성 사용하지 않습니다.DirectConnection속성 사용하지 않습니다.
데이터 유형: bool
기본값: false
예시:
opts := options.Client(). SetLoadBalanced(true) client, _ := mongo.Connect(opts)
Server API
SetServerAPIOptions() 메서드는 명령을 실행 때 서버 로 전송되는 API 버전을 구성합니다. 서버 API 에 대한 자세한 내용은 Stable API 가이드 참조하세요.
데이터 유형: ServerAPIOptions
기본값: nil
예시:
opts := options.Client(). SetServerAPIOptions(options.ServerAPI(options.ServerAPIVersion1)) client, _ := mongo.Connect(opts)
SRVmax 호스트
시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다.
이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.
데이터 유형: 음수가 아닌 int
기본값: 0
예시:
opts := options.Client(). SetSRVMaxHosts(5) client, _ := mongo.Connect(opts)
srvServiceName
운전자 시드 목록을 구성하기 위해 검색하는 SRV 리소스 레코드의 서비스 이름입니다. 운전자 서비스 이름을 사용하여 다음 형식과 일치하는 SRV URI를 생성합니다.
_{srvServiceName}._tcp.{hostname}.{domainname}
이 속성 검색 및 폴링에서 SRV 조회에 대한 기본값 서비스 이름을 재정의합니다. 기본값 은 "mongodb"입니다.
이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.
데이터 유형: string
기본값: mongodb
예시:
opts := options.Client(). SetSRVServiceName("yourServiceName") client, _ := mongo.Connect(opts)
추가 정보
연결 문자열 에 지정할 수 있는 옵션에 대해 자세히 학습 MongoDB Server 매뉴얼의 연결 문자열 옵션을 참조하세요.
이 페이지에 사용된 유형에 대한 자세한 내용은 다음 API 문서를 참조하세요.