Visão geral
Ao usar o driver Node.js para realizar uma operação de servidor, você pode limitar a duração permitida para cada estágio da operação. Especifique as opções de tempo limite por estágio para limitar estágios como seleção de servidor, checkout de conexão e execução no lado do servidor. Quando um tempo limite expira, o driver Node.js gera uma exceção de tempo limite.
Aviso
As opções de conexão timeoutMS e timeoutMode estão obsoletas no driver Node.js v7.8 e posterior. Essas opções não têm efeito e estão programadas para serem removidas em uma versão futura.
Nas versões 6.11 a 6.21 e 7.0 a 7.7 do driver Node.js, a opção de conexão timeoutMS pode causar dessincronização do pool de conexões. A dessincronização ocorre após um timeout de operação e pode expor os dados de outros usuários. Para aprender mais, consulte o aviso de atualização nas notas da versão 7.8.
Em vez disso, use as opções de tempo limite por estágio descritas nesta página.
Opções de tempo limite por estágio
O driver Node.js fornece as seguintes opções para limitar o tempo permitido para cada estágio de uma operação de servidor:
serverSelectionTimeoutMS: Limita o tempo em milissegundos que o driver bloqueia para a seleção do servidor antes de gerar um erro.waitQueueTimeoutMS: Limita o tempo em milissegundos que o driver gasta tentando verificar uma conexão do pool de conexões de um servidor.socketTimeoutMS: Limita o tempo em milissegundos que o driver gasta tentando enviar ou receber em um socket.maxTimeMS: Limita o tempo em milissegundos que o servidor gasta executando uma operação após a operação chegar ao servidor. Você pode passar omaxTimeMSsomente para uma operação individual ou para um cursor.
Para aprender como especificar essas opções, incluindo exemplos de código, consulte a seção Opções de Tempo Limite de Conexão do guia Especificar Opções de Conexão.