개요
Node.js 드라이버를 사용하여 서버 작업을 수행할 때 작업의 각 단계에 허용되는 시간을 제한할 수 있습니다. 서버 선택, 연결 체크아웃, 서버 측 실행과 같은 단계를 제한하려면 단계별 시간 초과 옵션을 지정하세요. 시간 초과가 만료되면 Node.js 드라이버는 시간 초과 예외를 발생시킵니다.
경고
timeoutMS 및 timeoutMode 연결 옵션은 Node.js 드라이버 v7.8 이상에서 더 이상 사용되지 않습니다. 이러한 옵션은 아무런 효과가 없으며 향후 릴리스에서 제거될 예정입니다.
Node.js 드라이버 버전 6.11에서 6.21 사이와 7.0에서 7.7 사이에서 timeoutMS 연결 옵션으로 인해 연결 풀 동기화가 해제될 수 있습니다. 동기화 해제는 작업 시간 초과 후에 발생하며 다른 사용자의 데이터를 노출할 수 있습니다. 자세한 내용은 버전 7.8 릴리스 노트의 업그레이드 경고를 참조하세요.
대신 이 페이지에 설명된 단계별 시간 제한 옵션을 사용하세요.
단계별 타임아웃 옵션
Node.js 드라이버는 서버 작업의 각 단계에 허용되는 시간을 제한하기 위해 다음과 같은 옵션을 제공합니다.
serverSelectionTimeoutMS: 오류를 발생시키기 전에 드라이버가 서버 선택을 차단하는 시간(밀리초)을 제한합니다.waitQueueTimeoutMS: 드라이버가 서버의 연결 풀에서 연결 확인을 시도하는 데 소요되는 시간(밀리초)을 제한합니다.socketTimeoutMS: 드라이버가 소켓에서 데이터를 보내거나 받는 데 시도하는 시간을 밀리초 단위로 제한합니다.maxTimeMS: 작업이 서버에 도달한 후 서버가 작업을 실행하는 데 소요되는 시간을 밀리초 단위로 제한합니다.maxTimeMS는 개별 작업이나 커서에만 전달할 수 있습니다.
코드 예시를 포함하여 이러한 옵션을 지정하는 방법을 알아보려면 연결 옵션 지정 가이드의 연결 시간 제한 옵션 섹션을 참조하세요.