P (rocess) M (anager)2,是可以用于生产环境的Nodejs的进程管理工具,并且它内置一个负载均衡。它不仅可以保证服务不会中断一直在线,并且提供0秒reload功能,还有其他一系列进程管理、监控功能。并且使用起来非常简单。下面我将把我的使用过程分享出来,Nodejs应用是一个基于Express 4.x的应用,名称是 Wolverine 。
pm2 start app.js 启动 pm2 start -- run dev (执行package.json中的scripts启动命令)
pm2 list 查看进程 pm2 show 0或者pm2 info 0
pm2 monit 监控
pm2 reload all 重载
pm2 stop all 停止pm2列表中的所有进程
pm2 reload 重启
如果配置脚本启动命令
"scripts": {
"dev": "NODE_ENV=local node app.js",
"build": "NODE_ENV=production node app.js"
}
dev环境启动 pm2 start npm -- run dev
pro环境启动 pm2 app.js