Docs Menu
Docs Home
/ / /
Node.js 드라이버
/ /

연결 옵션

이 섹션에서는 드라이버에서 지원하는 MongoDB 연결 및 인증 옵션에 대해 설명합니다. 연결 옵션을 연결 URI의 매개변수로 전달하여 클라이언트의 동작을 지정할 수 있습니다.

이름
허용되는 값
기본값
설명
앱 이름
문자열
null
연결 핸드셰이크의 일부로 드라이버가 서버에 전달하는 앱 이름을 클라이언트 메타데이터에 지정합니다. 드라이버는 연결 구축 시 MongoDB에 appName 값을 보냅니다. 이 값은 로그 파일, 느린 쿼리 로그 및 프로필 컬렉션에 기록됩니다.
authMechanism
문자열
null
서버 연결에 사용할 인증 메커니즘 방법을 지정합니다. 값을 지정하지 않으면 드라이버는 서버 버전에 따라 SCRAM-SHA-1 또는 SCRAM-SHA-256 기본 메커니즘을 사용합니다. 사용 가능한 인증 메커니즘은 인증 메커니즘 을 참조하세요.
authMechanismProperties
쉼표로 구분된 키: 'opt1:val1,opt2:val2'와 같은 값 쌍
null
GSSAPI에 대한 호스트 이름 정규화를 활성화하는 옵션 등 인증에 제공되는 다른 옵션을 지정합니다.
authSource
문자열
null
연결이 인증할 데이터베이스를 지정합니다.
압축기
'snappy,zlib,zstd'와 같이 쉼표로 구분된 문자열 목록
null
서버와 주고받는 유선 프로토콜 메시지에 허용되는 압축 유형을 지정합니다. 자세한 내용은 네트워크 압축을 참조하세요.
connectTimeoutMS
non-negative integer
30000
오류가 발생하기 전에 서버에 단일 TCP 소켓 연결을 설정하기 위해 대기할 시간(밀리초)을 지정합니다. 0을 지정하면 연결 시간 제한이 비활성화됩니다.
directConnection
부울
false
연결 URI에 지정된 호스트에 모든 작업을 강제로 디스패치할지 여부를 지정합니다.
enableUtf8Validation
부울
true

true을 지정하면 연결에 대해 UTF-8 유효성 검사가 활성화됩니다.MongoDB는 유효하지 않은 UTF-8 문자가 포함된 문자열 데이터를 BSON으로 직렬화하려고 시도하면 오류를 발생시킵니다. 이는 문서 키와 문서 값 모두에 적용되며, 이 유효성 검사는 처리 오버헤드를 추가합니다.

false로 지정하면 연결에 대한 UTF-8 유효성 검사가 비활성화됩니다. 데이터에 유효하지 않은 UTF-8 데이터가 포함되어 있어도 MongoDB는 오류를 발생시키지 않습니다. 유효성 검사를 비활성화 하면 응용 프로그램에서 유효성 검사 처리 오버헤드를 방지할 수 있습니다. 유효성 검사를 비활성화 한 상태에서 데이터를 편집하면 데이터가 손실될 수 있습니다. UTF-8 유효성 검사를 비활성화 하는 것은 데이터를 쿼리하거나 내보내기만을 위한 일시적인 해결책입니다.

Node.js 코드 에서 UTF- 유효성 검사를 설정할 수도8 있습니다. UTF-8 문자에 대해 자세히 알아보려면 UTF- 를 참조하세요.Wikipedia에서확인할 수 있습니다.8

heartbeatFrequencyMS
500보다 크거나 이와 동일한 정수
null
정기적인 서버 모니터링 확인 사이의 간격(밀리초)을 지정합니다.
journal
부울
null
클라이언트에 대한 저널 쓰기 고려를 지정합니다. 자세한 내용은 쓰기 고려를 참조하세요.
loadBalanced
부울
null
드라이버가 로드 밸런서에 연결 중인지 여부를 지정합니다.
localThresholdMS
non-negative integer
15
적합한 서버를 선택하기 위한 왕복 시간에서 지연 시간 창의 크기(밀리초)를 지정합니다. 0을 지정하면 대기 시간이 없으므로 사용 가능한 가장 빠른 서버를 사용할 수 있습니다.
maxIdleTimeMS
non-negative integer
0
연결이 닫히기 전 유휴 상태가 유지될 수 있는 시간(밀리초)을 지정합니다. 0을 지정하면 최소값이 없습니다.
maxPoolSize
non-negative integer
100
드라이버가 연결 풀에 생성할 수 있는 최대 클라이언트 또는 연결 수를 지정합니다. 이 수에는 사용 중인 연결이 포함됩니다.
maxConnecting
non-negative integer
2
드라이버의 연결 풀이 동시에 설정할 수 있는 최대 연결 수를 지정합니다.
최대 보관 기간
-1 또는 90보다 크거나 90과 같은 정수
null
세컨더리가 경험할 수 있고 계속해서 서버 선택에 적합한 실제 시간 기준으로 측정된 최대 복제 지연 시간을 나타냅니다. -1을 지정하면 최대값이 없습니다.
minPoolSize
non-negative integer
0
작업이 발생하지 않는 경우에도 드라이버가 연결 풀에서 생성하고 유지 관리하는 연결 수를 지정합니다. 이 수에는 사용 중인 연결이 포함됩니다.
proxyHost
문자열
null
SOCKS5 프록시 IPv4 주소, IPv6 주소 또는 도메인 이름을 지정합니다.
proxyPort
non-negative integer
null
SOCKS5 프록시 서버의 TCP 포트 번호를 지정합니다. proxyHost 옵션을 설정하면 이 옵션의 기본값은 1080(으)로 설정됩니다.
proxyUsername
문자열
null
SOCKS5 프록시 서버에 인증할 사용자 이름을 지정합니다. 이 옵션을 길이가 0인 문자열로 설정하면 드라이버는 이를 무시합니다.
proxyPassword
문자열
null
SOCKS5 프록시 서버에 대한 인증을 위한 비밀번호를 지정합니다. 이 옵션을 길이가 0인 문자열로 설정하면 드라이버는 이를 무시합니다.
readConcernLevel
문자열
null
클라이언트에 대한 기본 읽기 고려를 지정합니다. 자세한 내용은 읽기 고려를 참조하세요.
읽기 설정
문자열
"primary"
클라이언트의 기본 읽기 설정(태그 제외)을 지정합니다. 자세한 내용은 읽기 설정을 참조하세요.
readPreferenceTags
쉼표로 구분된 키:값 쌍(예: "dc:ny,rack:1" and "dc:ny는 여러 번 지정할 수 있으며, 이 키의 각 인스턴스는 별도의 태그 세트입니다.
null

클라이언트에 대한 기본 읽기 설정 태그를 지정합니다. 이 옵션은 읽기 설정 모드가 프라이머리가 아닌 경우에만 유효합니다.

드라이버는 URI의 태그 순서를 읽기 설정 순위로 사용합니다.

복제본 세트
문자열
null
연결한 복제본 세트의 이름을 지정합니다.
retryReads
부울
true
재시도 가능 읽기를 활성화합니다.
쓰기 재시도
부울
true
재시도 가능 쓰기를 활성화합니다.
serverMonitoringMode
auto, stream, poll
auto
드라이버 모니터가 사용하는 모니터링 모드를 지정합니다. 이 옵션을 auto로 설정하면 드라이버가 실행되는 환경에 따라 모니터링 모드가 결정됩니다. 드라이버는 FaaS(서비스로서의 기능) 환경에서 폴링 모드를 사용하고 다른 환경에서는 스트리밍 모드를 사용합니다.
serverSelectionTimeoutMS
non-negative integer
30000
오류가 발생하기 전에 서버 선택을 차단하는 제한 시간(밀리초)을 지정합니다.
서버 선택 시도
부울
true
서버 선택 시간이 초과될 때까지 반복적으로 토폴로지를 스캔하는 대신 서버 선택 실패 후 한 번만 토폴로지를 스캔하도록 지정합니다.
socketTimeoutMS
non-negative integer
0
제한 시간이 초과되기 전에 소켓에서 송신 또는 수신을 시도하는 데 소요되는 시간 (밀리초)을 지정합니다. 0을 지정하면 시간 제한이 없습니다.
srvMaxHosts
non-negative integer
0
시드 목록을 처음 채울 때 또는 SRV 폴링 중에 토폴로지에 새 호스트를 추가할 때 무작위로 선택할 SRV 결과의 최대 개수를 지정합니다.
srvServiceName
RFC 6335에 따른 유효한 SRV 서비스 이름
"mongodb"
초기 DNS 시드 목록 검색에서 SRV 조회에 사용할 서비스 이름을 지정합니다.
ssl
부울
false
ssltls 옵션의 별칭입니다.
TLS
부울
false
서버에 연결할 때 TLS가 필요한지 여부를 지정합니다. "mongodb+srv"srvServiceName을 사용하거나 다른 tls 접두사가 붙은 옵션을 지정하면 암시적으로 tls 값이 true로 설정됩니다.
tlsAllowInvalidCertificates
부울
false
서버의 TLS 인증서가 유효하지 않은 경우 드라이버가 오류를 생성하는지 여부를 지정합니다. 테스트 목적으로만 이 옵션을 true로 설정합니다.
tlsAllowInvalidHostnames
부울
false
서버의 호스트 이름과 TLS 인증서에 지정된 호스트 이름이 일치하지 않을 때 드라이버가 오류를 생성할지 여부를 지정합니다. 테스트 목적으로만 이 옵션을 true로 설정합니다.
tlsCAFile
문자열
null
TLS 연결을 작성할 때 신뢰할 수 있는 인증 기관의 단일 또는 번들이 있는 파일의 경로를 지정합니다. 이 연결 옵션 설정에 대해 자세히 알아보려면 TLS 가이드의 인증서 파일 경로 제공 섹션을 참조하세요.
tlsCertificateKeyFile
문자열
null
클라이언트 인증서 파일 또는 클라이언트 개인 키 파일의 경로를 지정합니다. 둘 다 필요한 경우 파일을 연결해야 합니다. 이 연결 옵션 설정에 대해 자세히 알아보려면 TLS 가이드의 인증서 파일 경로 제공 섹션을 참조하세요.
tlsCertificateKeyFilePassword
문자열
null
TLS 연결에 사용할 클라이언트 개인 키를 해독하기 위한 비밀번호를 지정합니다.
tlsInsecure
부울
false
유효하지 않은 인증서나 호스트 이름 불일치를 허용하는 등 TLS 제약 조건을 최대한 완화하도록 지정합니다. 테스트 목적으로만 이 옵션을 true로 설정합니다.
w
음수가 아닌 정수 또는 문자열
null
클라이언트에 대한 기본 쓰기 고려 "w" 필드를 지정합니다.
waitQueueTimeoutMS
non-negative integer
0
시간이 초과되기 전에 서버의 연결 풀에서 연결 확인을 시도하는 시간(밀리초)을 지정합니다.
wTimeoutMS
non-negative integer
null
클라이언트에 대한 기본 쓰기 고려 시간 초과 필드를 지정합니다.
zlibCompressionLevel
-1에서 9 사이의 정수(포괄적)
-1
zlib를 사용하여 유선 프로토콜 메시지를 압축할 때 압축 수준을 지정합니다. -1은 기본 수준을 나타내고, 0은 압축이 없음을 나타내고, 1은 가장 빠른 속도를 나타내고, 9는 최상의 압축을 나타냅니다. 자세한 내용은 네트워크 압축을 참조하세요.

돌아가기

연결 가이드