Detta är ett vanligt problem när poolade anslutningar i längre körande applikationer returnerar connection closed
.
dokumentationen
rekommenderar att du lägger till keepAlive
till optionsobjektet du skickar till connect
funktion.
Här är ett exempel (du kan ta bort replset
om du inte använder detta),
// 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');
});