序言:由于Node是单线程,服务如果挂掉服务线程也就没了,pm2是一个进程管理工具,可以用它来管理你的node进程。
PM2的主要功能
- 内建负载均衡(使用Node cluster 集群模块)
- 后台运行
- 0秒停机重载,我理解大概意思是维护升级的时候不需要停机.
- 停止不稳定的进程(避免无限循环)
- 控制台检测
- 提供 HTTP API
- 远程控制和实时的接口API ( Nodejs 模块,允许和PM2进程管理器交互 )
1.全局安装pm2
任意目录下执行命令,pm2安装目录在node安装目录下bin文件夹下。
npm install -g pm2
然后会显示,会有写WARN 警告,不用管
/node/node_install_path/node-v8.11.0-linux-x64/bin/pm2 -> /node/node_install_path/node-v8.11.0-linux-x64/lib/node_modules/pm2/bin/pm2
/node/node_install_path/node-v8.11.0-linux-x64/bin/pm2-dev -> /node/node_install_path/node-v8.11.0-linux-x64/lib/node_modules/pm2/bin/pm2-dev
/node/node_install_path/node-v8.11.0-linux-x64/bin/pm2-docker -> /node/node_install_path/node-v8.11.0-linux-x64/lib/node_modules/pm2/bin/pm2-docker
/node/node_install_path/node-v8.11.0-linux-x64/bin/pm2-runtime -> /node/node_install_path/node-v8.11.0-linux-x64/lib/node_modules/pm2/bin/pm2-runtime
npm WARN registry Using stale package data from https://registry.npmjs.org/ due to a request error during revalidation.
+ pm2@2.10.2
added 221 packages in 81.645s
2.pm2配置全局变量
路径是node安装路径bin路径
ln -s /node/node_install_path/node-v8.11.0-linux-x64/bin/pm2 /usr/local/bin/pm2
3.查看是否配置完成环境变量
//查看版本号
pm2 -v
//正常显示pm2版本号
2.10.2
4.pm2 设置开机启动
pm2 startup
5.pm2 基本使用
pm2 start app.js
启动
pm2 start app.js --watch
代码发生变化自动重启
pm2 restart app.js
重启
pm2 stop app.js
停止
pm2 log
显示所有进程日志
更多pm2使用查看官方文档