我一直在使用Node.js
and开发一个实时应用程序Socket.io
,我想将它从本地测试阶段带到我们的一些用户中进行测试。问题是,如果我关闭与服务器的 ssh 会话,它也会停止我开始使用的服务器node app.js
我考虑过使用nohup,
,但我偶尔会遇到分段错误或其他导致服务器停机的随机错误。我需要 1) 知道我的服务器何时(希望是为什么)崩溃,这样我就可以努力改进它以减少崩溃并确保它重新启动。此外,我不能 24/7 醒来自己重新启动服务器,所以有一些东西daemon
会很可爱。
我发现forever
可以通过 npm 获得,但它与更新的 Node 版本不兼容,0.8.x
并且我正在运行0.9.1
,而且它似乎没有得到很好的维护。
我也偶然发现了distribution
and up
,但似乎缺乏使用它们构建一个像样的应用程序的文档和示例。
cluster
然后是使用andos
模块的答案。https://stackoverflow.com/a/10997753/1883464
但 Node 将集群列为实验性http://nodejs.org/api/cluster.html
由于缺乏关于在真实生产环境中保持 Node 服务器正常运行(以及更新其代码!)的答案、示例和讨论,我开始觉得我是第一个想要将他们的应用程序部署到部署的人;) 不知何故,我确信这个问题有一些我没有找到的常见答案。