pm2是一个进程管理工具,可以用它来管理你的node进程,并查看node进程的状态,当然也支持性能监控,进程守护,负载均衡等功能。

Fork模式

CommandDescription
pm2 start app.js --name my-api启动并命名进程

Cluster模式

CommandDescription
pm2 start app.js -i 0将根据可用的CPU启动LB(调度器)的最大进程

列举

CommandDescription
pm2 list显示所有进程状态
pm2 jlist在原始JSON中的打印进程列表
pm2 prettylist在美化的JSON中的打印进程列表
pm2 describe 0显示特定流程相关的所有信息
pm2 monit监控所有流程

日志

CommandDescription
pm2 logs [--raw]以流方式显示所有进程日志
pm2 flush清空所有日志文件
pm2 reloadLogs重载所有日志

操作

CommandDescription
pm2 stop all停止所有进程
pm2 restart all重启所有进程
pm2 reload all0秒重启(对于NETWORKED应用程序)
pm2 stop 0停止特定ID的进程
pm2 restart 0重启特定ID的进程
pm2 delete 0将从pm2列表中删除进程
pm2 delete all将从pm2列表中删除所有进程

杂项

CommandDescription
pm2 reset <process>重置元数据(重启时间…)
pm2 updatePM2更新pm2内存
pm2 ping确保已启动pm2守护程序
pm2 sendSignal SIGUSR2 my-app将系统信号发送到脚本
pm2 start app.js --no-daemon如果pm2守护程序y已经不存在,在前台运行pm2守护程序
pm2 start app.js --no-vizion跳过vizion特性(版本控制)
pm2 start app.js --no-autorestart禁止自动重启应用程序