[英]Running node.js script with forever [closed]
我一直在运行节点脚本,并且对它的可靠性以及是否在脚本仍在运行时是否应该进行其他类型的检查感到好奇。 我正在使用以下命令:
forever start server.js
该服务器用作我的websocket服务器,即使抛出通常会停止脚本的错误,它也必须运行。 我已经进行了一些测试,并且似乎可以正常工作,但是很高兴听到使用这种组合一段时间的人对它在生产环境中的可靠性的了解。
是的,这是可靠的,但是如果您的脚本包含一些可以停止脚本的错误,则该脚本将在每次节点停止时启动。 这样可以在一定程度上填充日志,并且很快您将没有内存。 最好在进行生产之前进行全面测试,以保持同一服务器上的其他应用程序正常运行。
但是您不必担心每次都保持节点正常运行。
还要检查一下nodemon ,当节点发生更改时,它将自动重新启动节点。
我永远在生产环境中运行,并且个人喜欢它。 我使用节点服务器使用ImageMagick处理图像。 有时,我会收到一个ENOMEM错误(内存不足),并且Node崩溃。 (我猜这是我尚未跟踪的脚本中的内存泄漏)。发生这种情况时,Forever会立即启动,并在几秒钟内恢复服务器。 我让浏览器向用户返回一条消息,要求他们重试-他们这样做,并且处理过程还不错。 我还看到其他随机错误也发生了,主要是在开发过程中,并且Forever也捕获了这些错误,并重新启动了节点服务器,而没有失败。 我不记得Node崩溃并且服务器从未重启过的时间,所以它做了应该做的事情。
如果您执行console.log(),它将输出到永久日志,那么Node脚本也很棒。 我经常会拖尾,以检查服务器上正在发生的事情,甚至不时查看日志以了解其性能。 它会告诉您是否/何时永久重新安装服务器。
祝好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.