优秀的nodejs进程管理器 PM2 的介绍和使用

544 阅读1分钟

一:why ?

1.pm2是可以用于生产环境的Nodejs的进程管理工具,并且它内置一个负载均衡。

2.内置负载均衡(使用Node cluster 集群模块)

3.在后台运行

4.0秒停机重载,修改文件不用停机重启,类似前端脚手架热加载

5.具有Ubuntu 和Centos 的启动脚本

6.停止不稳定的进程(避免无限循环)

7.控制台检测 (可以显示各种访问数据,内存暂用数据)

二:how ?

和安装其他node插件一样 npm install pm2 -g
原来启用node程序都是 node xxx.js
而且启动几个项目就要开几个cmd窗口
比如现在我在阿里云服务器新建了两个express项目index.js和index2.js就可以这样启动项目
pm2 start index.js 还可以这样pm2 start index.js --watch表示热重启,更改文件自动重启,

111.png 然后再开启第二个服务 pm2 start index.js --watch

222.png 有多少个服务就执行多少次,每个服务都会显示在列表里
如果要停止某个服务则使用pm2 stop :id 比如要停止id为2的服务 pm2 stop 2

333.png 重新启动 pm2 restart 2 --watch

555.png 停止所有服务 pm2 stop all 删除指定服务 pm2 detele :id 删除所有 pm2 detele all
集群模式下启用多个应用实例开启负载均衡 pm2 start index2.js -i 3 --watch

666.png 还可以调整负载进程数量 pm2 scale index2.js 2

777.png 现在index2.js 的实例编程两个

内置cpu / 内存监控

pm2 monit

888.png