Este é um problema comum quando as conexões em pool em aplicativos de execução mais longa retornam
connection closed . A documentação do mangusto recomenda adicionar
keepAlive para o objeto de opções que você passa para o connect função. Aqui está um exemplo (você pode remover
replset se você não estiver usando isso), // include keep alive for closing connections,
// https://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html
var mongoOptions =
{
db: {safe: true},
server: {
socketOptions: {
keepAlive: 1
}
},
replset: {
rs_name: 'myReplSet',
socketOptions: {
keepAlive: 1
}
}
};
mongoose.connect( YOUR_URI, mongoOptions );
mongoose.connection.on('error', function(err) {
console.log('Mongo Error:\n');
console.log(err);
}).on('open', function() {
console.log('Connection opened');
});