在开发和运行 node 项目时,我们通常使用 node 自带的 npm 命令来启动和管理应用程序。但是,npm 命令有一些限制,比如无法在后台运行应用程序,无法自动重启应用程序等。这些限制在生产环境下会对应用程序的稳定性产生影响。
为了解决这些问题,我们可以使用 pm2 来启动和管理 node 项目。pm2 是一个进程管理工具,可以在后台启动和管理 node 应用程序,并提供自动重启、进程监控和日志管理等功能。pm2 是开源免费的,支持跨平台部署(Windows、Linux、MacOS 等)。
下面介绍如何使用 pm2 来启动和管理 node 项目。
安装 pm2
安装 pm2 非常简单,只需要使用 npm 命令即可:
--- ------- --- --
安装完成后,可以使用 pm2 命令来管理 node 项目。
启动和停止 node 项目
使用 pm2 启动和停止 node 项目也非常简单,只需要在项目根目录下执行 pm2 start 命令即可:
--- ----- ------
这里假设 app.js 是 node 项目的入口文件。pm2 会将 app.js 启动在后台,并生成一个进程管理器。可以通过 pm2 list 命令查看所有正在运行的项目。
如果需要停止 node 项目,可以使用 pm2 stop 命令:
--- ---- ------
自动重启 node 项目
当应用程序出现崩溃或异常时,pm2 会自动重启应用程序,确保应用程序的稳定性。例如,如果修改了 node 项目的代码文件,pm2 会自动重启应用程序。
进程监控和日志管理
pm2 提供一个 Dashboard 界面,可以查看所有正在运行的项目和进程状态,还可以查看 stdout 和 stderr 的日志输出。可以使用 pm2 plus 或 pm2 io 等工具配合使用 Dashboard。
其他命令
除了上面介绍的命令,pm2 还提供了很多其他命令,例如:
- pm2 restart:重启应用程序
- pm2 delete:删除应用程序
- pm2 scale:扩展应用程序实例数
- pm2 describe:查看应用程序详细信息
- pm2 monit:查看 CPU 和内存占用情况
示例代码
下面是一个简单的 node 项目示例:
----- ---- - ---------------- ----- ------ - -------------------------- ----- ---- - ------------------ ---------------- -------------- ---------------- --------- ---------- --- -------------------- ------------------- ------- -- -------------------------
可以使用 pm2 来启动该项目:
--- ----- ------
现在该应用程序已经在后台运行,并且可以通过浏览器访问 http://127.0.0.1:8080/ 来查看效果。
结论
通过使用 pm2 来启动和管理 node 项目,可以提高应用程序的稳定性和可靠性。同时,pm2 还提供了很多其他功能,例如自动重启、进程监控和日志管理等。希望这篇介绍可以帮助读者更好地理解和使用 pm2。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6719c3f79b4aadf9e004f243