3

根据许多文章,在 node.js 应用程序中处理未捕获异常的最佳方法是让进程崩溃然后重新启动它。这避免了我们的应用程序处于不稳定状态。我认为它可以通过像看门狗这样的外部进程(有时称为天使进程)来完成。在 linux 系统中执行此操作的最佳方法是什么?乍一看,每 n 秒检查一次节点进程状态的 bash 脚本可能是一种可能的解决方案。在此先感谢,任何建议将不胜感激。

Node.js 最佳实践异常处理

http://shapeshed.com/uncaught-exceptions-in-node/

http://debuggable.com/posts/node-js-dealing-with-uncaught-exceptions:4c933d54-1428-443c-928d-4e1ecbdd56cb

4

2 回答 2

4

有一些解决方案,例如您提到的看门狗/天使流程。你最常听到的一个是“永远”。它可以通过 npm 获得。

要安装,只需:npm install -g forever

然后当你想运行你的应用程序时:forever app.js而不是node app.js

于 2013-05-27T11:25:41.910 回答
1

我已经成功使用了supervisord,我认为它非常适合您的目的。它不是特定于节点的,您几乎可以将它与任何不会从控制台分离的东西一起使用。

借助事件功能,它为各种场景提供了一个很好的灵活工具。

于 2013-05-27T12:27:58.950 回答