Node.js upstart vs forever

Node.js upstart vs forever,node.js,upstart,forever,Node.js,Upstart,Forever,我希望daemonize我的Node.js应用程序。“暴发户”和“永远”有什么区别?另外,还有其他软件包我可能想考虑看看吗?upstart是一个用于后台监控应用程序的通用工具。Forever是为Node.js设计的。在大多数情况下,forever更适合Node.js应用程序,因为它更简单、针对Node.js进行了调优,并且易于配置。只需尝试一些有关upstart的教程,您就会同意我的观点。正如评论中指出的,将用于启动脚本,因为upstart具有系统事件挂钩(如关闭和启动服务器) 其他区别是:

我希望daemonize我的Node.js应用程序。“暴发户”和“永远”有什么区别?另外,还有其他软件包我可能想考虑看看吗?

upstart是一个用于后台监控应用程序的通用工具。Forever是为Node.js设计的。在大多数情况下,forever更适合Node.js应用程序,因为它更简单、针对Node.js进行了调优,并且易于配置。只需尝试一些有关upstart的教程,您就会同意我的观点。

正如评论中指出的,将用于启动脚本,因为
upstart
具有系统事件挂钩(如关闭和启动服务器)

其他区别是:

  • Upstart是为Linux开发的,而forever是独立于平台的
  • Forever是nodejs特有的,它有一些非常酷的特性,可以在服务器崩溃后重新启动服务器,并记录日志
  • 对于开发环境来说,永远是足够的,而如果您需要控制服务器的停止方式,则upstart是必要的。例如,在关闭时,永久进程将被终止,但是,使用upstart脚本,您可以收集日志并通知管理员
  • Upstart允许您添加其他监视工具,如
在可用的其他解决方案中,您可以尝试,这相当于永久


关于upstart设置,我不同意@leorex。查看一个很好的例子。

目标的主要区别在于upstart设计用于在系统引导时启动应用程序。Forever没有这个功能,而是专注于在崩溃(很可能是未处理的异常)的情况下保持node.js脚本运行。你最好把两者结合起来。。i、 e.从upstart(在系统引导时)启动
永远的yourscript.js


也就是说,您需要查看特定于平台的upstart版本。Upstart从未在windows上运行过,现在已不推荐用于ubuntu/debian:

2017年,替代方案可能是:

  • 。强健、强大的社区、生产级解决方案。还可以管理非节点脚本。我个人的选择
  • 。仅限节点。同样面向生产,包括构建/打包、部署到docker、负载平衡和评测,但这是最近才出现的。看起来很有希望

这是一个(可能有偏见的)永久性的例子。

当系统重新启动时,您可能需要使用upstart或其他一些init脚本来启动永久性。哇,pm2真是不可思议。谢谢