Node.js 如何优雅地关闭mongoose';谁的连接池?

Node.js 如何优雅地关闭mongoose';谁的连接池?,node.js,mongodb,mongoose,node-mongodb-native,Node.js,Mongodb,Mongoose,Node Mongodb Native,如果我收到一个SIGINT/SIGTERM(例如ctrl+c),那么我必须优雅地停止我的应用程序并关闭与mongodb服务器的所有连接 大多数文档/教程都说明要停止连接(或 连接池),我必须使用-which调用池中的连接 不过,所有这些文件也表示,这应该在所有待处理的写入完成后进行 当我收到信号事件(例如SIGINT、SIGTERM等)时,我如何知道这一点?mongoose是否具有正常关机功能,或者在调用disconnect()时是否会丢失数据 (我使用的是最新的位。)要接收SIGINT信号并停

如果我收到一个SIGINT/SIGTERM(例如ctrl+c),那么我必须优雅地停止我的应用程序并关闭与mongodb服务器的所有连接

大多数文档/教程都说明要停止连接(或 连接池),我必须使用-which调用池中的连接

不过,所有这些文件也表示,这应该在所有待处理的写入完成后进行

当我收到信号事件(例如SIGINT、SIGTERM等)时,我如何知道这一点?mongoose是否具有正常关机功能,或者在调用
disconnect()
时是否会丢失数据


(我使用的是最新的位。)

要接收SIGINT信号并停止连接,可以使用以下代码:

process.on('SIGINT',()=>{
mongoose.disconnect()。然后(()=>{
process.exit();
});
});

要接收SIGINT信号并停止连接,可以使用以下代码:

process.on('SIGINT',()=>{
mongoose.disconnect()。然后(()=>{
process.exit();
});
});

我知道怎么做。问题是,如果可能的话,我该如何优雅地执行此操作,以避免挂起的写入丢失。它不会强制关闭连接。
process.exit()
是一种快速失败的方法,但会在mongoose之后调用。disconnect()return RESOLVED promise…我知道怎么做。问题是,如果可能的话,我该如何优雅地执行此操作,以便挂起的写入不会丢失。它不会强制关闭连接。
process.exit()
是一种快速失败的方法,但会在mongoose之后调用。disconnect()返回已解决的承诺…我知道如何侦听信号事件。我不知道的是如何确保所有写入都被刷新。如果可能的话,如何优雅地做。我知道如何倾听信号事件。我不知道的是如何确保所有写入都被刷新。如果可能的话,如何优雅地做到这一点。