개요
이 페이지에서는 C 운전자 에서 사용할 수 있는 연결 옵션과 이를 MongoDB 연결에 적용 방법을 설명합니다.
연결 옵션 지정 방법
다음 섹션에서는 연결 옵션을 지정하는 방법에 대해 설명합니다.
연결 문자열 사용
연결 문자열 monogoc_client_t 구조에 전달하는 경우 문자열에 연결 옵션을 <name>=<value> 쌍으로 포함할 수 있습니다. 다음 예시 에서 연결 문자열 값이 60000 인 connectTimeoutMS 옵션과 값이 true인 tls 옵션이 포함되어 있습니다.
mongoc_init(); // Specifies the connection options in the connection string const char *uri = "mongodb+srv://localhost:27017/?connectTimeoutMS=60000&tls=true"; // Creates a new client mongoc_client_t *client = mongoc_client_new_from_uri_with_error(uri, &error); if (!client) { fprintf(stderr, "%s\n", error.message); goto cleanup; } // Use client... cleanup: mongoc_client_destroy(client); mongoc_uri_destroy(uri);
연결 문자열 에 지정할 수 있는 옵션에 대해 자세히 학습 MongoDB Server 매뉴얼에서연결 문자열 옵션을 참조하세요.
URI 옵션 API 사용
URI 옵션을 사용하여 연결 문자열 아닌 코드에서 연결 설정을 구성할 수 있습니다. 이러한 방식으로 연결을 구성하면 런타임에 설정을 더 쉽게 변경할 수 있고, 컴파일 중에 오류를 포착하는 데 도움이 되며, 연결 문자열 보다 더 많은 구성 옵션을 제공할 수 있습니다.
URI 옵션을 사용하여 연결 옵션을 설정하다 하려면 다음 단계를 수행합니다.
연결 문자열 사용하여
mongoc_uri_t구조체 만들기URI 옵션 함수를 사용하여 원하는 연결 옵션 지정
URI를 다음에 전달하여 URI로 새 클라이언트 만듭니다.
mongoc_client_new_from_uri()
다음 코드 예시 앞의 단계를 수행하는 방법을 보여줍니다.
mongoc_uri_t *uri = mongoc_uri_new_with_error("mongodb+srv://localhost:27017/", &error); if (!uri) { fprintf(stderr, "%s\n", error.message); goto cleanup; } // Specifies the connection options by using the URI options API if (!mongoc_uri_set_option_as_int32(uri, MONGOC_URI_CONNECTTIMEOUTMS, 60000)) { fprintf(stderr, "Failed to set '%s'\n", MONGOC_URI_CONNECTTIMEOUTMS); goto cleanup; } if (!mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLS, true)) { fprintf(stderr, "Failed to set '%s'\n", MONGOC_URI_TLS); goto cleanup; } // Creates a new client client = mongoc_client_new_from_uri_with_error(uri, &error); if (!client) { fprintf(stderr, "%s\n", error.message); goto cleanup; } // Use client... cleanup: mongoc_client_destroy(client); mongoc_uri_destroy(uri);
연결 옵션
다음 섹션에서는 C 운전자 에서 사용할 수 있는 연결 옵션과 연결 문자열 또는 URI 옵션을 직접 사용하여 지정하는 방법에 대해 설명합니다.
복제본 세트 옵션
직접 연결
모든 작업을 호스팅하다 로 강제 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 운전자 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대한 자세한 학습 은 연결 문자열 가이드 참조하세요.
기본값 은 false입니다. 호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false (으)로 설정하다 해야 합니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb://localhost:27017/?directConnection=true");
복제본 세트
연결할 복제본 세트의 이름입니다. 기본값은 null입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?replicaSet=yourReplicaSet");
직접 연결
모든 작업을 호스팅하다 로 강제 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 운전자 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대한 자세한 학습 은 연결 문자열 가이드 참조하세요.
기본값 은 false입니다. 호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false (으)로 설정하다 해야 합니다.
mongoc_uri_set_option_as_bool(uri, MONGOC_URI_DIRECTCONNECTION, true);
복제본 세트
연결할 복제본 세트의 이름입니다. 기본값은 null입니다.
mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_REPLICASET, "yourReplicaSet");
TLS 옵션
TLS 활성화
서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true");
안전하지 않은 TLS 허용
TLS 제약 조건을 최대한 완화할지 여부를 지정합니다. 여기에는 유효하지 않은 인증서 또는 호스트 이름 불일치를 허용하는 것이 포함될 수 있습니다. 기본값 은 false입니다.
다음 코드 예시 이 옵션을 true로 설정하다 방법을 보여줍니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true&tlsAllowInvalidCertificates=true");
TLS 비활성화 인증서 해지 확인
TLS 핸드셰이크 중 인증서 해지 확인을 비활성화할지 여부입니다. 기본값 은 false입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true&tlsDisableCertificateRevocationCheck=true");
SSL 옵션
클라이언트 인증서, 해지 처리, TLS/SSL 프로토콜 활성화 및 비활성화를 포함한 TLS/SSL 옵션. 기본값 은 null입니다.
이 옵션은 URI 옵션을 통해서만 설정하다 수 있습니다. SSL 옵션을 설정하다 방법을 학습 MongoC URI Option 탭 아래의 SSL 옵션 섹션을 참조하세요.
TLS 활성화
서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.
mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLS, true);
안전하지 않은 TLS 허용
TLS 제약 조건을 최대한 완화할지 여부를 지정합니다. 여기에는 유효하지 않은 인증서 또는 호스트 이름 불일치를 허용하는 것이 포함될 수 있습니다. 기본값 은 false입니다.
다음 코드 예시 이 옵션을 true로 설정하다 방법을 보여줍니다.
mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLSINSECURE, true);
TLS 비활성화 인증서 해지 확인
TLS 핸드셰이크 중 인증서 해지 확인을 비활성화할지 여부입니다. 기본값 은 false입니다.
mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLSDISABLECERTIFICATEREVOCATIONCHECK, true);
SSL 옵션
클라이언트 인증서, 해지 처리, TLS/SSL 프로토콜 활성화 및 비활성화를 포함한 TLS/SSL 옵션. 기본값 은 null입니다.
SslSettings.CheckCertificateRevocation 가 false 로 설정하다 있고 AllowInsecureTls 가 true로 설정하다 되어 있으면 C 운전자 예외가 발생합니다.
mongoc_client_t *client; mongoc_ssl_opt_t ssl_opts = {0}; ssl_opts.pem_file = "/path/to/client-cert.pem"; ssl_opts.pem_pwd = "password"; ssl_opts.ca_file = "/path/to/ca.pem"; ssl_opts.allow_invalid_hostname = false; mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true"); client = mongoc_client_new_from_uri(uri); mongoc_client_set_ssl_opts(client, &ssl_opts);
TLS 옵션에 대한 자세한 내용은 TLS(전송 계층 보안) 구성 가이드 참조하세요.
타임아웃 옵션
연결 시간 초과
운전자 시간이 초과되기 전에 서버 에 대한 단일 TCP 소켓 연결을 설정하려고 시도하는 시간입니다. 기본값 은 10 초입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?connectTimeoutMS=60000");
소켓 시간 초과
운전자 시간이 초과되기 전에 소켓에서 전송 또는 수신을 시도하는 시간입니다. 기본값 은 운영 체제에서 설정하다 .
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?socketTimeoutMS=60000");
압축 옵션
연결 풀 옵션
최대 풀 크기
운전자 연결 풀 에서 만들 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다. 기본값 은 100입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?maxPoolSize=150");
대기열 시간 초과
운전자 시간이 초과되기 전에 서버의 연결 풀 에서 연결을 체크아웃하려고 시도하는 시간입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?waitQueueTimeoutMS=30000");
최대 연결 풀 크기
운전자 연결 풀 에서 만들 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다. 기본값 은 100입니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_MAXPOOLSIZE, 150)
mongoc_client_pool_t 구조를 사용하여 최대 연결 풀 크기를 설정하다 수도 있습니다.
mongoc_client_pool_t *pool = mongoc_client_pool_new(uri); // Specifies max pool size mongoc_client_pool_max_size(pool, 150);
대기열 시간 초과
운전자 시간이 초과되기 전에 서버의 연결 풀 에서 연결을 체크아웃하려고 시도하는 시간입니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_WAITQUEUETIMEOUTMS, 30000);
연결 풀에 대해 자세히 학습 연결 풀 가이드 참조하세요.
쓰기 고려 옵션
w
쓰기 고려 (write concern) 의 w 구성 요소로, 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자 및 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?w=2");
w 시간 초과
쓰기 고려 (write concern) 의 wtimeoutms 구성 요소로, 쓰기 고려 (write concern) 대한 시간 제한을 지정합니다. wtimeout 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?wTimeoutMS=5000");
Journal
쓰기 고려 (write concern) 의 j 구성 요소로, MongoDB 인스턴스가 디스크 저널 에 기록했다는 확인을 요청합니다. 기본값 은 writeConcernMajorityJournalDefault 설정의 값에 따라 달라집니다. j 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?journal=true");
w
쓰기 고려 (write concern) 의 w 구성 요소로, 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자 및 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.
MONGOC_URI_W 옵션을 사용하여 w 을 설정하다 수 있습니다.
// Use the int32 version of the mongoc_uri_t set function to set integer values mongoc_uri_set_option_as_int32(uri, MONGOC_URI_W, 2); // Use the utf8 version of the mongoc_uri_t set function to set string values mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_W, "majority");
mongoc_write_concern_t 구조를 사용하여 w 를 설정하다 수도 있습니다.
// Creates a write concern structure mongoc_write_concern_t *write_concern = mongoc_write_concern_new(); // Sets w=2 mongoc_write_concern_set_w(write_concern, 2); mongoc_client_set_write_concern(client, write_concern);
w 시간 초과
쓰기 고려 (write concern) 의 wtimeoutms 구성 요소로, 쓰기 고려 (write concern) 대한 시간 제한을 지정합니다. wtimeout 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.
MONGOC_URI_WTIMEOUTMS 옵션을 사용하여 wtimeoutms 을 설정하다 수 있습니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_WTIMEOUTMS, 5000);
mongoc_write_concern_t 구조를 사용하여 wtimeoutms 를 설정하다 수도 있습니다.
// Creates a write concern structure mongoc_write_concern_t *write_concern = mongoc_write_concern_new(); // Sets w=2 mongoc_write_concern_set_wtimeout(write_concern, 5000); // Apply write concern to client mongoc_client_set_write_concern(client, write_concern);
Journal
쓰기 고려 (write concern) 의 j 구성 요소로, MongoDB 인스턴스가 디스크 저널 에 기록했다는 확인을 요청합니다. 기본값 은 writeConcernMajorityJournalDefault 설정의 값에 따라 달라집니다. j 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.
MONGOC_URI_JOURNAL 옵션을 사용하여 journal 을 설정하다 수 있습니다.
mongoc_uri_set_option_as_bool(uri, MONGOC_URI_JOURNAL, true);
mongoc_write_concern_t 구조를 사용하여 journal 를 설정하다 수도 있습니다.
// Creates a write concern structure mongoc_write_concern_t *write_concern = mongoc_write_concern_new(); // Sets journal to true mongoc_write_concern_set_journal(write_concern, true); // Apply write concern to client mongoc_client_set_write_concern(client, write_concern);
읽기 고려 옵션
읽기 고려 수준
클라이언트의 읽기 고려 (read concern) 수준입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 고려 참조를 참조하세요.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readConcernLevel=local");
읽기 고려 수준
클라이언트의 읽기 고려 (read concern) 수준입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 고려 참조를 참조하세요.
MONGOC_URI_READCONCERNLEVEL 옵션을 사용하여 읽기 고려 (read concern) 수준을 설정하다 수 있습니다.
mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_READCONCERNLEVEL, "local")
mongoc_read_concern_t 구조를 사용하여 읽기 고려 (read concern) 수준을 설정하다 수도 있습니다.
mongoc_read_concern_t *read_concern = mongoc_read_concern_new(); // Set the read concern level to "local" mongoc_read_concern_set_level(read_concern, MONGOC_READ_CONCERN_LEVEL_LOCAL); mongoc_client_set_read_concern(client, read_concern);
읽기 기본 설정 옵션
읽기 설정
클라이언트의 기본값 읽기 설정입니다. 기본값 은 primary 입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 설정을 참조하세요.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readPreference=primaryPreferred");
Max Staleness
최대 비활성 시간(초)은 세컨더리 경험할 수 있고 여전히 서버 선택 대상이 될 수 있는 벽시계 시간으로 가장 긴 복제 지연 나타냅니다. maxStalenessSeconds 에 허용되는 가장 작은 값은 90 초입니다. 이 옵션은 프라이머리가 아닌 읽기 설정 (read preference) 과 함께 사용해야 합니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readPreference=secondary&maxStalenessSeconds=120");
LocalThreshold
서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다. 기본값 은 15 밀리초입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?localThresholdMS=150");
읽기 설정
클라이언트의 기본값 읽기 설정입니다. 기본값 은 primary 입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 설정을 참조하세요.
mongoc_read_prefs_t 구조를 사용하여 읽기 설정 (read preference) 을 설정하다 수 있습니다.
mongoc_client_t *client = mongoc_client_new("mongodb+srv://localhost:27017/"); // Specifies the read preference mongoc_read_prefs_t *read_prefs = mongoc_read_prefs_new(MONGOC_READ_PRIMARY_PREFERRED); mongoc_client_set_read_prefs(client, read_prefs);
MONGOC_URI_READPREFERENCE 옵션을 사용하여 읽기 설정 (read preference) 설정하다 수도 있습니다.
mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_READPREFERENCE, "primaryPreferred")
Max Staleness
최대 비활성 시간(초)은 세컨더리 경험할 수 있고 여전히 서버 선택 대상이 될 수 있는 벽시계 시간으로 가장 긴 복제 지연 나타냅니다. maxStalenessSeconds 에 허용되는 가장 작은 값은 90 초입니다. 이 옵션은 프라이머리가 아닌 읽기 설정 (read preference) 과 함께 사용해야 합니다.
MONGOC_URI_MAXSTALENESSSECONDS 옵션을 사용하여 최대 비활성 상태를 설정하다 수 있습니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_MAXSTALENESSSECONDS, 120);
mongoc_read_prefs_t 구조를 사용하여 최대 비활성 상태를 설정하다 수도 있습니다.
mongoc_client_t *client = mongoc_client_new("mongodb+srv://localhost:27017/"); mongoc_read_prefs_t *read_prefs = mongoc_read_prefs_new(MONGOC_READ_SECONDARY); // Specifies max staleness to 120 seconds mongoc_read_prefs_set_max_staleness_seconds(read_prefs, 120); mongoc_client_set_read_prefs(client, read_prefs);
LocalThreshold
서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다. 기본값 은 15 밀리초입니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_LOCALTHRESHOLDMS, 150);
인증 옵션
인증 메커니즘
운전자 MongoDB Server 에 인증하는 데 사용하는 메커니즘입니다. 인증 메커니즘 지정하지 않으면 운전자 SCRAM-SHA-1 SCRAM-SHA-256서버 버전에 따라 또는 를 사용합니다. 사용 가능한 인증 메커니즘에 대해 자세히 학습 인증 메커니즘 또는 엔터프라이즈 인증 메커니즘 가이드 참조하세요.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?authSource=admin&authMechanism=GSSAPI");
인증 메커니즘
운전자 MongoDB Server 에 인증하는 데 사용하는 메커니즘입니다. 인증 메커니즘 지정하지 않으면 운전자 SCRAM-SHA-1 SCRAM-SHA-256서버 버전에 따라 또는 를 사용합니다. 사용 가능한 인증 메커니즘에 대해 자세히 학습 인증 메커니즘 또는 엔터프라이즈 인증 메커니즘 가이드 참조하세요.
mongoc_uri_set_auth_mechanism(uri, "GSSAPI");
서버 선택/검색 옵션
하트비트 빈도
서버 모니터링 확인 사이의 간격입니다. 500 밀리초 이상이어야 합니다. 기본값 은 풀링된(멀티 스레드) 모드 에서 10000 ms(10 초), 비풀링된(단일 스레드) 모드 에서 60000 ms(60 초) 입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?heartbeatFrequencyMS=5000");
서버 선택 시간 초과
운전자 시간이 초과되기 전에 서버 선택하려고 시도하는 시간입니다. 기본값 은 30000 ms(30 초)입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?serverSelectionTimeoutMS=40000");
소켓 검사 간격
단일 스레드 클라이언트에만 적용됩니다. 이 시간 내에 소켓이 사용되지 않은 경우 운전자 다시 사용하기 전에 빠른 "hello" 호출로 연결을 확인합니다. 기본값은 5000 ms(5 초)입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?socketCheckIntervalMS=10000");
하트비트 빈도
서버 모니터링 확인 사이의 간격입니다. 500 밀리초 이상이어야 합니다. 기본값 은 풀링된(멀티 스레드) 모드 에서 10000 ms(10 초), 비풀링된(단일 스레드) 모드 에서 60000 ms(60 초) 입니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_HEARTBEATFREQUENCYMS, 5000);
서버 선택 시간 초과
운전자 시간이 초과되기 전에 서버 선택하려고 시도하는 시간입니다. 기본값 은 30000 ms(30 초)입니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SERVERSELECTIONTIMEOUTMS, 40000);
소켓 검사 간격
단일 스레드 클라이언트에만 적용됩니다. 이 시간 내에 소켓이 사용되지 않은 경우 운전자 다시 사용하기 전에 빠른 "hello" 호출로 연결을 확인합니다. 기본값은 5000 ms(5 초)입니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SOCKETCHECKINTERVALMS, 10000);
재시도 옵션
기타 옵션
애플리케이션 이름
운전자 연결 핸드셰이크의 일부로 클라이언트 메타데이터 에서 서버 에 전달하는 앱 이름입니다. 연결이 설정되면 서버 이 값을 MongoDB 로그에 출력합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다. 기본값 은 비어 있습니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?appName=yourAppName");
로드 밸런싱
운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.
호스팅하다 이름을 하나만 지정합니다.
복제본 세트 에 연결하지 않습니다.
SrvMaxHosts속성 사용하지 않습니다.DirectConnection속성 사용하지 않습니다.
기본값은 false입니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?loadBalanced=true");
SRVmax 호스트
시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지 에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다. 기본값 은 0입니다.
이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.
mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?srvMaxHosts=5");
애플리케이션 이름
운전자 연결 핸드셰이크의 일부로 클라이언트 메타데이터 에서 서버 에 전달하는 앱 이름입니다. 연결이 설정되면 서버 이 값을 MongoDB 로그에 출력합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다. 기본값 은 비어 있습니다.
mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_APPNAME, "yourAppName");
로드 밸런싱
운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.
호스팅하다 이름을 하나만 지정합니다.
복제본 세트 에 연결하지 않습니다.
SrvMaxHosts속성 사용하지 않습니다.DirectConnection속성 사용하지 않습니다.
기본값은 false입니다.
mongoc_uri_set_option_as_bool(uri, MONGOC_URI_LOADBALANCED, true);
SRVmax 호스트
시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지 에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다. 기본값 은 0입니다.
이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.
mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SRVMAXHOSTS, 5);
추가 정보
이 페이지에 사용된 유형에 대한 자세한 내용은 다음 API 문서를 참조하세요.