我还没有部署,但我不确定如何执行此操作。
我有一个使用大量后台进程的应用程序。也就是说,即使在发送响应之后,仍然有与该响应相关联的函数在后台执行。因此,我想做这样的事情:
var server = http.createServer(app).listen(80)
process.on('SIGINT', function () {
server.close()
setTimeout(function () {
process.exit()
}, 30000) // Wait 30 seconds before exiting
})
我不确定这是否正确。更多假设:
- 这些后台进程至关重要。但是,它们可能需要 1-2 秒,而不是 30 秒。尽管如此,为了安全起见,我还是想延迟 30 秒。
- 这应该适用于重新启动进程(例如,永远)和停止进程
- Heroku(或任何其他进程)通过什么信号发送到 node.js
process
?我必须以不同的方式处理它们吗? - 我会以
uncaughtException
不同的方式处理吗?
谢谢