PM2 是一款非常优秀的 Node 进程管理工具,它有着丰富的特性:能够充分利用多核 CPU 且能够负载均衡、能够帮助应用在崩溃后、指定时间(cluster model)和超出最大内存限制 等情况下实现自动重启。
PM2 是开源的基于 Nodejs 的进程管理器,包括守护进程,监控,日志的一整套完整的功能。
PM2 的主要特性:
1、内建负载均衡(使用 Node cluster 集群模块)
2、后台运行
3、0 秒停机重载,我理解大概意思是维护升级的时候不需要停机.
4、具有 Ubuntu 和 CentOS 的启动脚本
5、停止不稳定的进程(避免无限循环)
6、控制台检测
PM2 的常见命令:
1、pm2 的安装
npm install pm2 -g # 命令行安装 pm2
2、运行 pm2 的程序并指定 name
pm2 start app.js --name www_itying_com
pm2 start app.js -i 3 --name www_itying_com
//3 启动 3 个进程 (自带负载均衡)
3、显示所有进程状态
pm2 list
4、显示所有进程状态
pm2 logs
5、显示一个进程的日志
pm2 logs www_itying_com
6、关闭重启所有进程
pm2 stop all # 停止所有进程
pm2 restart all # 重启所有进程
pm2 reload all # 0 秒停机重载进程 (用于 NETWORKED 进程)
7、关闭重启指定进程
pm2 stop 0 # 停止指定的进程
pm2 restart 0 # 重启指定的进程
pm2 stop www_itying_com
pm2 restart www_itying_com
8、杀死进程
pm2 delete 0 # 杀死指定的进程
pm2 delete all # 杀死全部进程
pm2 delete www_itying_com # 杀死指定名字的进程
9、显示相应进程/应用的总体信息
pm2 show www_itying_com