MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Por que é recomendado não fechar uma conexão MongoDB em qualquer lugar no código Node.js?


Você abre uma conexão Db uma vez com o MongoClient e a reutiliza em seu aplicativo. Se você precisar usar vários db, use a função .db no objeto Db para trabalhar em um db diferente usando o mesmo pool de conexões subjacente. Um pool é mantido para garantir que uma única operação de bloqueio não congele seu aplicativo node.js. Tamanho padrão se 5 conexões em um pool.

http://mongodb.github.io/node-mongodb-native/driver-articles/mongoclient.html

Também esqueci de adicionar. Como a outra resposta apontou, configurar uma nova conexão TCP é caro em termos de tempo e memória, é por isso que você reutiliza as conexões. Além disso, uma nova conexão fará com que um novo Thread seja criado no MongoDB usando memória no Db também.