什么是 PM2?
PM2(Process Manager 2)是一个基于 Node.js 的进程管理器,可帮助我们简单地管理、监控和部署我们的应用。它具有以下特点:
- 进程守护:确保您的应用程序在故障情况下保持运行状态
- 内存监控:自动分析您的应用程序的堆内存使用情况,并且可以自动重启您的应用程序
- 多核部署:可以启用多核系统的所有 CPU,从而显著提高性能
- 内置负载均衡器:使用负载均衡算法将请求分配给多线程中的一个
安装 PM2
在安装 PM2 之前,我们需要确保已经安装了 Node.js。如果还没有安装,请先按照以下步骤进行安装。
- 访问 Node.js 官网 下载 Node.js 安装包
- 执行安装程序并按照提示完成安装
安装 Node.js 后,我们就可以开始安装 PM2 了。可以运行以下命令来安装最新版本的 PM2:
$ npm install -g pm2
使用 PM2
启动应用程序
我们可以使用 PM2 启动我们的应用程序,只需要运行以下命令:
$ pm2 start app.js
在启动我们的应用程序之后,PM2 会自动为我们创建一个进程,并且监控该进程。如果在进程运行期间发生故障,PM2 将自动重启该进程。
监控应用程序
我们可以使用 PM2 监控我们的应用程序,只需要运行以下命令:
$ pm2 monit
该命令将在终端中显示我们的应用程序输出的日志。
停止应用程序
我们可以使用 PM2 停止我们的应用程序,只需要运行以下命令:
$ pm2 stop app
重启应用程序
我们可以使用 PM2 重启我们的应用程序,只需要运行以下命令:
$ pm2 restart app
删除应用程序
我们可以使用 PM2 删除我们的应用程序,只需要运行以下命令:
$ pm2 delete app
PM2 进程配置
我们可以通过 PM2 进行更多的配置,以满足我们的需求。我们可以使用以下步骤进行配置:
创建一个 PM2 进程配置文件
创建一个名为 process.json
的文件,该文件应具有以下架构。
-- -------------------- ---- ------- - ------- - - ------- ------ --------- ----------- ------------ -- -------- ----- ------------ ---------- ------ - ----------- ------------- -- ----------------- - ----------- ------------ - - - -
name
- 进程名称script
- 我们要运行的脚本instances
- 需要运行的实例数(默认为1)watch
- 如果设置为 true,则 PM2 将监视我们的应用程序,并在更改时重新启动(默认为 false)exec_mode
- 执行模式,可以是cluster
或fork
(默认为fork
)env
- 开发环境下的环境变量env_production
- 生产环境下的环境变量
启动 PM2 进程
运行以下命令启动我们的 PM2 进程:
$ pm2 start process.json
通过名称管理应用程序
由于每个应用程序都有一个唯一的名称,我们可以通过名称管理这些应用程序。
例如,我们可以使用以下命令查看我们所有的应用程序:
$ pm2 ls
或者使用以下命令重启一个名为 app
的应用程序:
$ pm2 restart app
结论
使用 PM2,我们可以方便地管理和监控我们的应用程序,并确保它们在故障情况下保持运行状态。PM2 还提供了许多可用于优化和配置我们的应用程序的选项。在大型项目中,PM2 完全可以成为我们的首选进程管理器。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/672f2207eedcc8a97c8ccac8