【问题标题】:How can I automatically restart a Node.js application using Forever and Nodemon (Windows)如何使用 Forever 和 Nodemon (Windows) 自动重启 Node.js 应用程序
【发布时间】:2018-09-15 21:31:41
【问题描述】:

我正在 Windows 中运行 node.js 应用程序,如果代码中存在导致应用程序停止的未处理异常,我希望它自动重新启动。

我做了一些研究,发现“Forever”和“Nodemon”的组合可以实现这个目标。

我在我的 Windows 10 设备上全局安装了这两个软件包。

npm install forever -g
npm install -g nodemon

我尝试使用以下命令来启动我的应用程序:

forever start nodemon --exitcrash app.js

但是,我收到以下错误:“nodemon 不存在”

如果尝试仅运行“nodemon”应用程序启动,这表明 Nodemon 包已安装,但是,这将不允许应用程序在崩溃后重新启动。

我做错了吗?我在网上找到的大多数建议只与 Linux 系统有关。

【问题讨论】:

    标签: node.js windows forever nodemon


    【解决方案1】:

    如果您已经永远使用,那么您可以摆脱 nodemon。相反,您可以使用 forever 和 cluster 模块的组合。只需 fork 工作线程以防异常,它也使您的应用更具可扩展性!

    如果还是 nodemon 更可取,可以尝试使用 -g 标志全局安装它

    【讨论】:

    • 没有要求集群。
    【解决方案2】:

    Forever 和 nodemon 实现了两个完全不同的目标

    • nodemon 用于在开发模式下运行您的应用程序,在这种情况下您会频繁更改代码,需要重新启动服务器。它不会在崩溃的情况下重新启动您的应用程序。稍后会详细介绍

    • 另一方面,Forever 是为了让您的应用程序在生产环境中作为守护进程运行。如果您有未捕获的异常,则自动重新启动。

    • 从历史上看,人们一直单独使用 Forever,或者与新贵脚本一起使用,作为 linux 服务运行,其中最著名的是 upstart

    • 目前的规范是使用PM2

    【讨论】:

      猜你喜欢
      • 2011-12-10
      • 1970-01-01
      • 1970-01-01
      • 2013-11-14
      • 1970-01-01
      • 2016-09-18
      • 2017-05-01
      • 2022-01-15
      • 2018-12-06
      相关资源
      最近更新 更多