在 Node.js 中,我们经常需要开启多个进程来完成不同的任务,例如 Web 服务器、定时任务等等。而对于这些进程的管理和监控,就需要使用到进程管理器。在众多的进程管理器中,pm2 是一个强大而又简单易用的工具,它不仅能够管理进程,还能够提供日志记录、负载均衡等功能。本文将介绍如何使用 pm2 管理进程。
安装 pm2
首先,需要全局安装 pm2。在终端中输入以下命令即可:
npm install -g pm2
管理进程
启动进程
使用 pm2 启动进程非常简单,只需在终端中输入以下命令:
pm2 start app.js
其中,app.js 是你要启动的 Node.js 代码文件的路径。pm2 将启动该文件,并在后台运行。
需要注意的是,如果你的代码中使用了相对路径引用其他文件,可能会出现找不到文件的情况。此时,建议使用绝对路径。
查看进程状态
在 pm2 启动进程后,可以使用以下命令查看进程状态:
pm2 status
该命令会列出当前所有运行的进程的状态,如下所示:
┌────────────┬──────┬──────┬───────┬────────┬─────────┬────────┬─────────────┬──────────┐ │ App name │ id │ mode │ pid │ status │ restart │ uptime │ memory │ watching │ ├────────────┼──────┼──────┼───────┼────────┼─────────┼────────┼─────────────┼──────────┤ │ app │ 0 │ fork │ 12345 │ online │ 8 │ 0s │ 42.074 MB │ disabled │ └────────────┴──────┴──────┴───────┴────────┴─────────┴────────┴─────────────┴──────────┘
其中,status 列显示了进程当前的状态。如果状态为 online,则表示进程正在运行。
关闭进程
如果需要关闭进程,可以使用以下命令:
pm2 stop app.js
该命令将停止指定的进程。如果要停止所有进程,可以使用以下命令:
pm2 stop all
重启进程
如果需要重启进程,可以使用以下命令:
pm2 restart app.js
该命令将停止指定的进程并重新启动。如果要重启所有进程,可以使用以下命令:
pm2 restart all
查看日志
在使用 pm2 管理进程的过程中,可以使用以下命令查看进程的日志:
pm2 logs
该命令将列出所有进程的日志记录,可以通过按下 Ctrl+C 终止查看。
监控负载
在生产环境中使用 pm2 管理进程时,可以使用 pm2 的监控负载功能来监控服务器的负载情况。可以使用以下命令启动 pm2 的监控负载的功能:
pm2 monit
该命令将启动监控负载的面板,可以查看 CPU、内存等资源的使用情况。
配置文件
可以通过 pm2 的配置文件来自定义 pm2 的行为。以下是一个简单的配置文件示例:
-- -------------------- ---- ------- - ------- - - ------- ------ --------- ------------- ------------ ------ ------------ ---------- -------------- ----- -------- ------ --------------------- ----- ------------------ ----------- ----- -- - - -展开代码
在该配置文件中,我们定义了一个名为 app 的进程,它将执行 src/app.js 文件。通过 instances 和 exec_mode 属性,我们指定了该进程将使用多个实例并以集群模式运行。通过 log_date_format 属性,我们可以自定义日志的时间格式。
在配置文件中还可以定义很多其他属性,具体可以参考 pm2 的官方文档。
结语
pm2 是一个非常强大而又简单易用的进程管理器,可以帮助我们轻松地管理多个进程。本文介绍了 pm2 的基本操作和配置文件,希望能够对你有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67bee31e0c976d473a3373bd