在前端开发中,我们经常使用 Node.js 来编写服务器端代码。当我们在服务器上运行 Node.js 应用程序时,需要确保它们始终在运行状态以保持业务连续性。为了解决这个问题,我们可以使用进程管理器,其中 PM2 是一个流行的选择。它是一个用于运行 Node.js 应用程序的生产过程管理器。
在本文中,我们将介绍如何使用 PM2 来管理 Node.js 进程,并通过示例代码来演示它的用法。
安装 PM2
PM2 可以通过 NPM 安装:
npm install -g pm2
安装完毕后,您可以使用以下命令来验证是否安装成功:
pm2 -v
启动进程
在开始管理进程之前,我们需要启动应用程序。为了启动应用程序并将其与 PM2 集成,可以运行以下命令:
pm2 start app.js
这将启动 app.js 应用程序并将其与 PM2 集成。如果您需要始终启动多个应用程序(例如,如果您的应用程序需要接口或其他进程),则可以使用以下命令:
pm2 start app1.js app2.js app3.js
监控进程
通过 pm2 start 启动应用程序后,我们需要监控该进程的状态。可以通过以下命令检查应用程序的状态:
pm2 status
您会看到以下输出:
┌──────────┬────┬─────────┬──────┬───────┬─────────┬────────┬─────────────┬──────────┐ │ App name │ id │ version │ mode │ pid │ status │ restart │ uptime │ CPU % │ ├──────────┼────┼─────────┼──────┼───────┼─────────┼────────┼─────────────┼──────────┤ │ app1 │ 0 │ 1.0.0 │ fork │ 28548 │ online │ 0 │ 4d 22h 47m │ 0.3% │ │ app2 │ 1 │ 1.0.0 │ fork │ 28549 │ online │ 0 │ 4d 22h 47m │ 0.2% │ │ app3 │ 2 │ 1.0.0 │ fork │ 28550 │ online │ 0 │ 4d 22h 47m │ 0.1% │ └──────────┴────┴─────────┴──────┴───────┴─────────┴────────┴─────────────┴──────────┘
您可以看到状态(Status)显示为 online,这表示应用程序正在运行。如果应用程序停止,则状态将更改为 stopped。您还可以使用以下命令来检查单个应用程序的状态:
pm2 status app1
停止进程
如果您需要停止某个应用程序,请使用以下命令:
pm2 stop app1
这将停止与 app1 集成的进程。如果您需要停止所有应用程序,请使用以下命令:
pm2 stop all
您可以通过以下命令来检查应用程序的状态是否确实已停止:
pm2 status
重启进程
如果您需要重新启动应用程序,请使用以下命令:
pm2 restart app1
这会重新启动与 app1 集成的进程。如果您需要重启所有应用程序,请使用以下命令:
pm2 restart all
可以通过以下命令来验证应用程序的状态是否已重新启动:
pm2 status
监视日志
在运行 Node.js 应用程序时,日志记录非常重要。通过 PM2,您可以监视正在运行的应用程序的日志。当您使用 pm2 start 启动应用程序时,PM2 将生成日志文件和错误文件。可以使用以下命令启动日志:
pm2 logs app1
这将输出所有应用程序日志。您还可以使用以下命令查看应用程序错误日志:
pm2 logs app1 --err
这将输出所有应用程序错误日志。
结论
PM2 是一个强大的工具,可用于管理 Node.js 进程的生产过程。在本文中,我们介绍了如何使用 PM2 启动、停止、重启应用程序,并监视应用程序的状态和日志。我们相信这些示例代码有助于您更好地了解该进程管理器,让您可以轻松管理您的应用程序。
Happy coding!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67110c3fad1e889fe2fd5314