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,
// http://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');
});