PM2 是一个守护进程管理器,它将帮助您管理和保持您的应用程序在线。PM2 入门非常简单,它以简单直观的 CLI 形式提供
指定应用名称
--name <app_name>
文件更改时监视并重新启动应用程序
--watch
设置应用重新加载的内存阈值
--max-memory-restart <200MB>
指定日志文件
--log <log_path>
将额外的参数传递给脚本
-- arg1 arg2 arg3
自动重启之间的延迟
--restart-delay <delay in ms>
带时间的前缀日志
--time
不要自动重启应用程序
--no-autorestart
指定 cron 强制重启
--cron <cron_pattern>
附加到应用程序日志
--no-daemon
现在您已经启动了这个应用程序,您可以检查它的状态、日志、指标,甚至可以使用 pm2.io 获取在线仪表板
列出PM2管理的所有应用的状态
$ pm2 [list|ls|status]
实时显示日志
$ pm2 logs
挖掘旧日志
$ pm2 logs --lines 200
这是一个直接适合您的终端的实时仪表板
$ pm2 monit
基于 Web 的仪表板,具有诊断系统的跨服务器
$ pm2 plus
对于 Node.js 应用程序,PM2 包括一个自动负载均衡器,它将在每个衍生进程之间共享所有 HTTP[s]/Websocket/TCP/UDP 连接
以集群模式启动应用程序
$ pm2 start app.js -i max
在 此处 阅读有关集群模式的更多信息
您还可以创建一个称为生态系统文件的配置文件来管理多个应用程序。生成生态系统文件
$ pm2 ecosystem
这将生成一个 ecosystem.config.js 文件
module.exports = {
apps : [{
name: "app",
script: "./app.js",
env: {
NODE_ENV: "development",
},
env_production: {
NODE_ENV: "production",
}
}, {
name: 'worker',
script: 'worker.js'
}]
}
并轻松启动
$ pm2 start ecosystem.config.js
在 此处 阅读有关应用程序声明的更多信息