express.js和x2B的干净关闭;mongodb服务器(使用node.js)
我有node.js Web服务器,使用express.js和mongodb作为数据存储。此服务器由express.js和x2B的干净关闭;mongodb服务器(使用node.js),node.js,mongodb,express,shutdown,Node.js,Mongodb,Express,Shutdown,我有node.js Web服务器,使用express.js和mongodb作为数据存储。此服务器由runit控制,我正在尝试实现一种方法来优雅地关闭服务器 我正在为SIGINT和SIGTERM实现信号处理程序,我知道您可以通过对createServer()返回的对象调用.close()停止侦听新连接。到目前为止还不错 但是,即使没有更多的请求,系统中可能已经有许多请求需要在关闭数据库之前完成 我使用的是mongodb ReplicaSet,我认为如果我立即调用db.close(),其中一些请求可
runit
控制,我正在尝试实现一种方法来优雅地关闭服务器
我正在为SIGINT
和SIGTERM
实现信号处理程序,我知道您可以通过对createServer()
返回的对象调用.close()
停止侦听新连接。到目前为止还不错
但是,即使没有更多的请求,系统中可能已经有许多请求需要在关闭数据库之前完成
我使用的是mongodb ReplicaSet,我认为如果我立即调用
db.close()
,其中一些请求可能会以某种方式失败。是否有某种方法可以关闭数据库,以允许挂起的数据库查询完成,或者我是否必须手动使用+/-计数器来查看有多少“活动”查询挂起,然后等待关机,直到它达到0?您必须手动确保处于干净状态才能关机,因为驱动程序在关机前不会等待清除剩余操作
请随时在上登录该功能的票证