pm2概述

  • 内建负载均衡(使用Node cluster 集群模块)
  • 后台运行
  • 0秒停机重载(维护升级的时候不需要停机).
  • 具有Ubuntu和CentOS 的启动脚本
  • 停止不稳定的进程(避免无限循环)
  • 控制台检测
  • 提供 HTTP API
  • 远程控制和实时的接口API ( Nodejs 9.模块,允许和PM2进程管理器交互 )

pm2命令

npm install pm2 -g     # 命令行安装 pm2 
pm2 start app.js -i 4 #后台运行pm2,启动4个app.js 
                              # 也可以把'max' 参数传递给 start
                              # 正确的进程数目依赖于Cpu的核心数目
pm2 start app.js --name my-api # 命名进程
pm2 list               # 显示所有进程状态
pm2 monit              # 监视所有进程
pm2 logs               #  显示所有进程日志
pm2 stop all           # 停止所有进程
pm2 restart all        # 重启所有进程
pm2 reload all         # 0秒停机重载进程 (用于 NETWORKED 进程)
pm2 stop 0             # 停止指定的进程
pm2 restart 0          # 重启指定的进程
pm2 startup            # 产生 init 脚本 保持进程活着
pm2 web                # 运行健壮的 computer API endpoint (http://localhost:9615)
pm2 delete 0           # 杀死指定的进程
pm2 delete all         # 杀死全部进程

pm2目录卸载

rm /usr/local/bin/pm2 
rm -r /usr/local/lib/node_modules 
rm -r /root/.pm2/ 
``

### pm2 自启动

安装pm2

npm install pm2 -g

保存当前进程状态

pm2 save

生成开机自启动服务

pm2 startup

启用开机自启:

systemctl enable pm2-root


### pm2 运行npm命令
### 简单用法
1. npm run dev
2. pm2 start npm -- run dev
以上使用是等效的
  

#### 监听并重新命名运行(--watch监听代码变化,--name 重命令任务名称,-- run后面跟脚本名字)
pm2 start npm --watch --name nickname -- run dev

### 手动删除pm2日志

pm2 flush

### 自动删除pm2日志

pm2 install pm2-logrotate // 注意是pm2 install而不是npm install
pm2 set pm2-logrotate-ext:retain 7 //保存7个文件
pm2 set pm2-logrotate-ext:max_size 100M //每个备份文件大小为100M

标签: none

添加新评论