Odpowiedź brzmi nie . Połączenia z bazą danych nie są poprawnie zamykane po wyjściu (lub awarii).
Aby to zrobić, użyj czegoś podobnego do:
// Create a function to terminate your app gracefully:
function gracefulShutdown(){
// First argument is [force], see mongoose doc.
mongoose.connection.close(false, () => {
console.log('MongoDb connection closed.');
});
});
}
// Ask node to run your function before exit:
// This will handle process.exit():
process.on('exit', gracefulShutdown);
// This will handle kill commands, such as CTRL+C:
process.on('SIGINT', gracefulShutdown);
process.on('SIGTERM', gracefulShutdown);
process.on('SIGKILL', gracefulShutdown);
// This will prevent dirty exit on code-fault crashes:
process.on('uncaughtException', gracefulShutdown);
Istnieje również kilka pakietów, które obsługują to zachowanie, ale zazwyczaj jest to bardzo proste i proste do zaimplementowania.