AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

연결 옵션 지정

이 페이지에서는 C 운전자 에서 사용할 수 있는 연결 옵션과 연결 문자열 또는 URI 옵션을 사용하여 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 옵션을 사용하여 연결 문자열 아닌 코드에서 연결 설정을 구성할 수 있습니다. 이러한 방식으로 연결을 구성하면 런타임에 설정을 더 쉽게 변경할 수 있고, 컴파일 중에 오류를 포착하는 데 도움이 되며, 연결 문자열 보다 더 많은 구성 옵션을 제공할 수 있습니다.

URI 옵션을 사용하여 연결 옵션을 설정하다 하려면 다음 단계를 수행합니다.

  1. 연결 문자열 사용하여 mongoc_uri_t 구조체 만들기

  2. URI 옵션 함수를 사용하여 원하는 연결 옵션 지정

  3. 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);

모든 작업을 호스트에 강제로 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 드라이버는 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대해 자세히 학습하려면 MongoDB Server 매뉴얼의 연결 문자열 가이드를 참조하세요.

호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false(으)로 설정하다 해야 합니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb://localhost:27017/?directConnection=true");

연결할 복제본 세트의 이름입니다.

데이터 유형: char*

기본값: NULL

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?replicaSet=yourReplicaSet");

모든 작업을 호스트에 강제로 디스패치할지 여부를 지정합니다. 이 옵션을 지정하면 드라이버는 SRV 연결 형식을 허용하지 않습니다. 대신 표준 연결 URI 형식을 사용해야 합니다. SRV 연결 및 표준 연결 형식에 대해 자세히 학습하려면 MongoDB Server 매뉴얼의 연결 문자열 가이드를 참조하세요.

호스팅하다 이름을 두 개 이상 지정하는 경우 이 속성 false(으)로 설정하다 해야 합니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_DIRECTCONNECTION, true);

연결할 복제본 세트의 이름입니다.

데이터 유형: char*

기본값: NULL

예시:

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_REPLICASET, "yourReplicaSet");

서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true");

TLS 제약 조건을 최대한 완화할지 여부를 지정합니다. 여기에는 유효하지 않은 인증서 또는 호스트 이름 불일치를 허용하는 것이 포함될 수 있습니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true&tlsInsecure=true");

TLS 핸드셰이크 중 인증서 해지 확인을 비활성화할지 여부입니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?tls=true&tlsDisableCertificateRevocationCheck=true");

서버 연결에 TLS를 요구할지 여부를 지정합니다. "mongodb+srv" 체계를 사용하거나 다른 TLS 옵션을 지정하는 경우 이 옵션의 기본값은 true입니다. 그렇지 않으면 기본값은 false입니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLS, true);

TLS 제약 조건을 최대한 완화할지 여부를 지정합니다. 여기에는 유효하지 않은 인증서 또는 호스트 이름 불일치를 허용하는 것이 포함될 수 있습니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLSINSECURE, true);

TLS 핸드셰이크 중 인증서 해지 확인을 비활성화할지 여부입니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_TLSDISABLECERTIFICATEREVOCATIONCHECK, true);

TLS 옵션에 대한 자세한 내용은 TLS(전송 계층 보안) 구성 가이드를 참조하세요.

시간이 초과하기 전에 드라이버가 서버에 단일 TCP 소켓 연결을 설정하려고 시도하는 시간 길이.

데이터 유형: integer

기본값: 10000 (10초)

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?connectTimeoutMS=60000");

운전자 시간이 초과되기 전에 소켓에서 전송 또는 수신을 시도하는 시간입니다. 기본값 은 운영 체제에서 설정하다 .

데이터 유형: integer

기본값: 300000 (5 분)

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?socketTimeoutMS=60000");

시간이 초과하기 전에 드라이버가 서버에 단일 TCP 소켓 연결을 설정하려고 시도하는 시간 길이.

데이터 유형: integer

기본값: 10000 (10초)

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_CONNECTTIMEOUTMS, 60000);

운전자 시간이 초과되기 전에 소켓에서 전송 또는 수신을 시도하는 시간입니다. 기본값 은 운영 체제에서 설정하다 .

데이터 유형: integer

기본값: 300000 (5 분)

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SOCKETTIMEOUTMS, 60000);

서버에 전송되거나 서버에서 수신되는 유선 프로토콜 메시지에 대한 선호 압축 유형(순서 대로). 선택 사항 빌드 시간 종속성으로 "snappy", "zlib", "zstd"를 활성화할 수 있습니다. 드라이버는 서버가 지원하는 이러한 압축 유형 중 첫 번째 것을 사용합니다.

데이터 유형: char*

기본값: NULL

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?compressors=zlib,snappy");

서버에 전송되거나 서버에서 수신되는 유선 프로토콜 메시지에 대한 선호 압축 유형(순서 대로). 선택 사항 빌드 시간 종속성으로 "snappy", "zlib", "zstd"를 활성화할 수 있습니다. 드라이버는 서버가 지원하는 이러한 압축 유형 중 첫 번째 것을 사용합니다.

데이터 유형: char*

기본값: NULL

예시:

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_COMPRESSORS, "zlib,snappy");

드라이버가 연결 풀에서 생성할 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다.

데이터 유형: integer

기본값: 100

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?maxPoolSize=150");

운전자 시간이 초과되기 전에 서버의 연결 풀 에서 연결을 체크아웃하려고 시도하는 시간입니다.

데이터 유형: integer

기본값: -1 (시간 초과 없음)

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?waitQueueTimeoutMS=30000");

드라이버가 연결 풀에서 생성할 수 있는 최대 클라이언트 또는 연결 수입니다. 이 수에는 사용 중인 연결이 포함됩니다.

데이터 유형: integer

기본값: 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);

운전자 시간이 초과되기 전에 서버의 연결 풀 에서 연결을 체크아웃하려고 시도하는 시간입니다.

데이터 유형: integer

기본값: 0

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_WAITQUEUETIMEOUTMS, 30000);

연결 풀에 대해 자세히 학습 연결 풀 가이드 참조하세요.

쓰기 고려 (write concern) 의 w 구성 요소로, 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자 및 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

데이터 유형: integer or char*

기본값: 1 or "majority"

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?w=2");

쓰기 고려 (write concern) 의 wtimeoutms 구성 요소로, 쓰기 고려 (write concern) 대한 시간 제한을 지정합니다. wtimeout 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

데이터 유형: integer

기본값: 0

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?wTimeoutMS=5000");

쓰기 고려 (write concern) 의 j 구성 요소로, MongoDB 인스턴스가 디스크 저널 에 기록했다는 확인을 요청합니다.

데이터 유형: boolean

기본값: false

옵션에 대해 j 자세히 학습 MongoDB Server 매뉴얼에서 쓰기 고려를 참조하세요.

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?journal=true");

쓰기 고려 (write concern) 의 w 구성 요소로, 쓰기 (write) 작업이 지정된 수의 MongoDB 인스턴스로 전파되었음을 확인 요청합니다. 기본값 은 중재자 및 투표 노드 수에 따라 "majority" 또는 1입니다. w 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

데이터 유형: integer or char*

기본값: 1 or "majority"

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);

쓰기 고려 (write concern) 의 wtimeoutms 구성 요소로, 쓰기 고려 (write concern) 대한 시간 제한을 지정합니다. wtimeout 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

데이터 유형: integer

기본값: 0

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);

쓰기 고려 (write concern) 의 j 구성 요소로, MongoDB 인스턴스가 디스크 저널 에 기록했다는 확인을 요청합니다. 기본값 은 writeConcernMajorityJournalDefault 설정의 값에 따라 달라집니다. j 옵션에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 쓰기 고려 를 참조하세요.

데이터 유형: boolean

기본값: false

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 매뉴얼의 읽기 고려 (read concern) 참조를 참조하세요.

데이터 유형: char*

기본값: local

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readConcernLevel=local");

클라이언트의 읽기 고려 (read concern) 수준입니다. 자세한 내용은 MongoDB Server 매뉴얼의 읽기 고려 (read concern) 참조를 참조하세요.

데이터 유형: char*

기본값: local

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);

클라이언트의 기본 읽기 설정 (read preference)입니다. 자세한 내용은 MongoDB Server 수동의 읽기 설정 (read preference)을 참조하세요.

데이터 유형: char*

기본값: primary

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readPreference=primaryPreferred");

최대 비활성 시간(초)은 세컨더리 경험할 수 있고 여전히 서버 선택 대상이 될 수 있는 벽시계 시간으로 가장 긴 복제 지연 나타냅니다. maxStalenessSeconds 에 허용되는 가장 작은 값은 90 초입니다. 이 옵션은 프라이머리가 아닌 읽기 설정 (read preference) 과 함께 사용해야 합니다.

데이터 유형: integer

기본값: -1

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?readPreference=secondary&maxStalenessSeconds=120");

서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다.

데이터 유형: integer

기본값: 15

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?localThresholdMS=150");

클라이언트의 기본 읽기 설정 (read preference)입니다. 자세한 내용은 MongoDB Server 수동의 읽기 설정 (read preference)을 참조하세요.

데이터 유형: char*

기본값: primary

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")

최대 비활성 시간(초)은 세컨더리 경험할 수 있고 여전히 서버 선택 대상이 될 수 있는 벽시계 시간으로 가장 긴 복제 지연 나타냅니다. maxStalenessSeconds 에 허용되는 가장 작은 값은 90 초입니다. 이 옵션은 프라이머리가 아닌 읽기 설정 (read preference) 과 함께 사용해야 합니다.

데이터 유형: integer

기본값: -1

예시:

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);

서버 자격에 대한 지연 시간 창 . 서버의 왕복 시간이 가장 빠른 서버의 왕복 시간에 이 값을 더한 것보다 오래 걸리는 경우 해당 서버 선택할 수 없습니다.

데이터 유형: integer

기본값: 15

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_LOCALTHRESHOLDMS, 150);

드라이버가 MongoDB Server에 대해 인증하는 메커니즘입니다. 인증 메커니즘을 지정하지 않으면 드라이버는 서버 버전에 따라 SCRAM-SHA-1 또는 SCRAM-SHA-256를 사용합니다.

사용 가능한 인증 메커니즘에 대해 자세히 학습 인증 메커니즘 또는 엔터프라이즈 인증 메커니즘 가이드 참조하세요.

데이터 유형: char*

기본값: SCRAM-SHA-256 ( MongoDB 4.0 이상의 경우)

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?authSource=admin&authMechanism=GSSAPI");

드라이버가 MongoDB Server에 대해 인증하는 메커니즘입니다. 인증 메커니즘을 지정하지 않으면 드라이버는 서버 버전에 따라 SCRAM-SHA-1 또는 SCRAM-SHA-256를 사용합니다.

사용 가능한 인증 메커니즘에 대해 자세히 학습 인증 메커니즘 또는 엔터프라이즈 인증 메커니즘 가이드 참조하세요.

데이터 유형: char*

기본값: SCRAM-SHA-256 ( MongoDB 4.0 이상의 경우)

예시:

mongoc_uri_set_auth_mechanism(uri, "GSSAPI");

서버 모니터링 확인 사이의 간격입니다. 500 밀리초 이상이어야 합니다. 기본값 은 풀링된(멀티 스레드) 모드 에서 10000 ms(10 초), 비풀링된(단일 스레드) 모드 에서 60000 ms(60 초) 입니다.

데이터 유형: integer

기본값: 10000 풀링된 클라이언트의 경우, 단일 스레드 클라이언트의 경우 60000

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?heartbeatFrequencyMS=5000");

드라이버가 시간이 초과되기 전에 서버 선택을 시도하는 시간입니다.

데이터 유형: integer

기본값: 30000

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?serverSelectionTimeoutMS=40000");

단일 스레드 클라이언트에만 적용됩니다. 이 시간 내에 소켓이 사용되지 않은 경우 운전자 빠른 "hello" 다시 사용하기 전에 호출합니다.

데이터 유형: integer

기본값: 5000

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?socketCheckIntervalMS=10000");

서버 모니터링 확인 사이의 간격입니다. 500 밀리초 이상이어야 합니다. 기본값 은 풀링된(멀티 스레드) 모드 에서 10000 ms(10 초), 비풀링된(단일 스레드) 모드 에서 60000 ms(60 초) 입니다.

데이터 유형: integer

기본값: 10000

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_HEARTBEATFREQUENCYMS, 5000);

드라이버가 시간이 초과되기 전에 서버 선택을 시도하는 시간입니다.

데이터 유형: integer

기본값: 30000

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SERVERSELECTIONTIMEOUTMS, 40000);

단일 스레드 클라이언트에만 적용됩니다. 이 시간 내에 소켓이 사용되지 않은 경우 운전자 빠른 "hello" 다시 사용하기 전에 호출합니다.

데이터 유형: integer

기본값: 5000

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SOCKETCHECKINTERVALMS, 10000);

재시도 가능 읽기를 활성화합니다.

데이터 유형: boolean

기본값: true

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?retryReads=false");

재시도 가능 쓰기를 활성화합니다.

데이터 유형: boolean

기본값: true TLS 지원, 그렇지 않으면 false

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?retryWrites=false");

재시도 가능 읽기를 활성화합니다.

데이터 유형: boolean

기본값: true

예시:

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_RETRYREADS, false)

재시도 가능 쓰기를 활성화합니다.

데이터 유형: boolean

기본값: true

예시:

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_RETRYWRITES, false);

참고

Intelligent Workload Management(IWM)의 로드 차단

SystemOverloadedError 또는 RetryableError 레이블의 오류로 인해 애플리케이션 에 장애가 발생하거나 애플리케이션 로그에 표시되는 경우, 클러스터 에서 부하 차단이 활성화되어 있을 수 있으며 운전자 이를 지원하는 버전으로 업그레이드되지 않을 수 있습니다. MongoDB C 드라이버 버전 2.3 이상으로 업그레이드하는 것이 좋습니다. 업그레이드 후에도 이러한 오류가 계속 표시되면 로드 차단 구성 검토와 같은 서버 사이드 변경이나 사용자 지정 오류 처리 또는 클라이언트 사이드 요청 스로틀링 구현과 같은 애플리케이션 사이드 변경을 통해 문제를 주소 수 있습니다. 상황에 따라 애플리케이션 측 변경이 선호되거나 필요할 수 있습니다.

로드 차단은 IWM의 기능 으로, 지속적인 과부하 상태에서 과도한 작업을 거부하여 서버 로드를 관리 도움이 됩니다. 이 기능 MongoDB 9.0 이상에서 사용할 수 있습니다.

IWM 또는 과부하 오류 처리에 대한 자세한 내용은 Atlas 설명서의 Intelligent Workload Management 페이지 또는 Overload Errors 페이지를 참조하세요.

연결 핸드쉐이크의 일부로 드라이버가 클라이언트 메타데이터에 서버에 전달하는 앱 이름입니다. 서버는 연결이 설정되면 이 값을 MongoDB 로그에 인쇄합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다.

데이터 유형: char*

기본값: 비어 있음

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?appName=yourAppName");

운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.

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

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

  • SrvMaxHosts 속성 사용하지 않습니다.

  • DirectConnection 속성 사용하지 않습니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?loadBalanced=true");

시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다.

이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.

데이터 유형: integer

기본값: 0

예시:

mongoc_uri_t *uri = mongoc_uri_new("mongodb+srv://localhost:27017/?srvMaxHosts=5");

연결 핸드쉐이크의 일부로 드라이버가 클라이언트 메타데이터에 서버에 전달하는 앱 이름입니다. 서버는 연결이 설정되면 이 값을 MongoDB 로그에 인쇄합니다. 이 값은 느린 쿼리 로그 및 프로필 컬렉션에도 기록됩니다.

데이터 유형: char*

기본값: empty

예시:

mongoc_uri_set_option_as_utf8(uri, MONGOC_URI_APPNAME, "yourAppName");

운전자 로드 밸런서 에 연결 중인지 여부를 지정합니다. 다음 조건이 모두 충족되는 경우에만 이 속성 true 로 설정하다 수 있습니다.

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

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

  • SrvMaxHosts 속성 사용하지 않습니다.

  • DirectConnection 속성 사용하지 않습니다.

데이터 유형: boolean

기본값: false

예시:

mongoc_uri_set_option_as_bool(uri, MONGOC_URI_LOADBALANCED, true);

시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지에 새 호스트를 추가할 때 무작위로 선택할 수 있는 SRV 결과의 최대 개수입니다.

이 속성 연결 문자열 체계가 ConnectionStringScheme.MongoDBPlusSrv로 설정하다 경우에만 사용할 수 있습니다. 복제본 세트 에 연결할 때는 사용할 수 없습니다.

데이터 유형: integer

기본값: 0

예시:

mongoc_uri_set_option_as_int32(uri, MONGOC_URI_SRVMAXHOSTS, 5);

이 페이지에 사용된 유형에 대한 자세한 내용은 다음 API 문서를 참조하세요.