
PM2 是 Node.js 应用的专业级进程管理器,专为生产环境设计,提供应用守护、集群管理、日志监控等核心功能。
核心特性应用守护:崩溃时自动重启零秒重载:热更新应用不停机 (pm2 reload)负载均衡:通过集群模式利用多核 CPU日志管理:集中收集 stdout/stderr 日志监控仪表盘:实时查看 CPU/内存/请求状态 安装与更新 核心命令手册1. 进程生命周期管理命令
作用
示例
pm2 start
启动应用
pm2 start app.js --name "API"
pm2 stop
停止应用
pm2 stop 0(ID)或 pm2 stop all
pm2 restart
硬重启
pm2 restart api(应用名)
pm2 reload
软重载(不停机)
pm2 reload cluster-app
pm2 delete
移除进程
pm2 delete 1 或 pm2 delete all
2. 集群模式(负载均衡)3. 监控与日志命令
作用
pm2 status
查看进程状态表
pm2 monit
打开实时监控仪表盘
pm2 logs
显示所有日志
pm2 logs api --err
仅显示错误日志
pm2 flush
清空历史日志
pm2 startup
创建系统服务(开机自启)
4. 配置文件(关键)通过 ecosystem.config.js 管理复杂配置:
使用配置启动:pm2 start ecosystem.config.js
⚙️ 高级运维操作环境变量隔离ecosystem.config.js 中配置 env_production 和 env_staging 区分
健康检查开启 HTTP 健康检查端点:
定时重启(内存泄漏防御) 故障排除问题
诊断命令
应用反复崩溃
pm2 logs --lines 1000
CPU 占用过高
pm2 monit + pm2 describe <id>
端口冲突
pm2 list 查端口 + lsof -i :8080
启动失败
NODE_ENV=development pm2 start app.js --no-daemon
文件描述符耗尽
`pm2 describe <id>
可视化监控⚠️ 安全提醒不使用 root 运行:防火墙限制:日志权限加固:通过 PM2,你可以将 Node.js 应用的 可用性提升 99.95%+。更多命令参考官方文档:PM2 Runtime Documentation