PM2 是一个可以运行 Node.js 应用程序的进程管理器。它具有许多实用功能,例如用于应用程序启动和重启的策略设置。
在本文中,我们将探讨 PM2 中如何设置应用程序的启动和重启策略。
策略设置
PM2 提供多种启动和重启策略,可以根据您的需求和应用程序类型进行选择。
启动策略
启动策略指定当 PM2 在启动应用程序时如何执行。
以下是 PM2 支持的几种启动策略:
- 最少重启次数:当应用程序崩溃或异常终止时,PM2 会尝试将应用程序重新启动,最多尝试指定次数;如果超出指定次数,则停止自动重启并等待手动重启。
- 断线重连:当应用程序崩溃或异常终止时,PM2 会尝试将应用程序重新启动,但与“最少重启次数”策略不同的是,该策略会尝试重试无限次直到应用程序能够重新启动。
- 先关闭再启动:当您的应用程序依赖于另一个服务或应用程序时,可以使用此策略。在启动应用程序之前,该策略将停止指定的服务或应用程序,并在启动应用程序后重新启动该服务或应用程序。
重启策略
重启策略指定当 PM2 检测到应用程序崩溃或异常终止时如何自动重启应用程序。
以下是 PM2 支持的几种重启策略:
- 自动:当应用程序崩溃或异常终止时,PM2 将立即重启应用程序。
- 监视:在此模式下,PM2 将持续监视应用程序,并在应用程序崩溃或异常终止时立即重启应用程序。
- 无:当应用程序崩溃或异常终止时,PM2 不会自动重启应用程序。
配置应用程序
在使用 PM2 管理应用程序之前,需要确保已在系统上安装了 Node.js 和 PM2,可以按照以下步骤安装:
-- -------------------- ---- ------- - -- ------- ---- ------- ------ ---- ------- ------- ------ - -- --- ---- ------- ------- --- - ---- --- ---- --- ------- --- --
在安装完成后,我们可以使用 PM2 在系统上部署和管理应用程序。
PM2 启动应用程序
# 切换到应用程序目录 cd /path/to/your/app # 启动应用程序 pm2 start app.js
此命令将使用默认的 PM2 启动应用程序。如果您希望指定启动或重启策略,则需要使用 PM2 启动命令中的选项。例如:
# 启动应用程序并设置启动和重启策略 pm2 start app.js --watch --restart-delay=5000 --restart-cron="0 0 * * * *"
此命令将在 PM2 中启动应用程序,并使用“监视”重启策略和“延迟 5 秒”重启延迟设置。它还设置了一个 cron 表达式 以在每个小时的 0 分进行重启。
PM2 查看应用程序状态
# 查看应用程序状态 pm2 list
此命令将列出 PM2 中当前运行的应用程序,并显示有关它们的信息,例如进程 ID、状态、重启计数等。
PM2 停止应用程序
# 停止应用程序 pm2 stop app.js
此命令将停止在 PM2 中运行的指定应用程序。
PM2 重启应用程序
# 重启应用程序 pm2 restart app.js
此命令将重启在 PM2 中运行的指定应用程序。
PM2 删除应用程序
# 删除应用程序 pm2 delete app.js
此命令将从 PM2 中删除指定应用程序。
总结
PM2 提供了多种启动和重启策略,可以根据您的需求和应用程序类型进行选择。您可以使用 PM2 的命令行界面轻松配置应用程序,然后在 PM2 中运行和管理它们。这使得部署和管理 Node.js 应用程序变得非常容易。
希望本文可以帮助您了解 PM2 的启动和重启策略,以便您可以更好地管理您的 Node.js 应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64a6233a48841e98942ad6fe