nodejs项目进程守护工具supervisor、pm2与forever

  1. supervisor 是开发环境用,它会监视你对代码的改动,并自动重启 Node.js。
  2. forever 管理多个站点,每个站访问量不大,不需要监控。
  3. pm2 网站访问量比较大,需要完整的监控界面。

supervisor 特点: 代码修改,实时重启

supervisor的安装也很简单:

直接用npm安装既可,键入命令: npm -g install supervisor

这里注意一点的就是,supervisor必须安装到全局,如果你不安装到全局,错误命令会提示你安装到全局。

安装完以后就可以用supervisor 来启动服务了。

安装: cnpm install -g supervisor

启动:supervisor app.js || bin/www 

 

forever需要安装到全局环境下

安装: npm install forever -g

启动 :forever app.js #前台进程 forever start app.js #后台进程

停止forever stop app.js

 


pm2的特性:

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

安装: npm install pm2@latest -g

启动 :pm2 start app.js

停止pm2 kill

pm2启动命令
  1. pm2 start app.js:启动nodeJs应用,进程的默认名称为文件名app
  2. pm2 start app.js --name mynode:启动node,并指定进程名称为mynode
  3. pm2 start app.js -i max:根据有效CPU数目启动最大进程数目
  4. pm2 start app.js -i 3:启动3个进程
  5. pm2 start app.js --watch:实时监控的方式启动,app.js文件有变动时,pm2会自动reload
  6. pm2 start app.js -x:用fork模式启动 app.js 而不是使用 cluster
  7. pm2 start app.js -x -- -a 23:用fork模式启动 app.js 并且传递参数(-a 23)
  8. pm2 start app.json:启动进程, 在 app.json里设置选项
  9. pm2 start app.js -i max -- -a 23:在 -- 之后给 app.js 传递参数
  10. pm2 start app.js -i max -e err.log -o out.log:启动并生成一个配置文件
pm2查看与监视进程
  1. pm2 list:显示所有进程;
  2. pm2 show 0,pm2 info 0:查看进程id为 0 的详细信息;
  3. pm2 monit:进入监视页面,监视每个node进程的CPU和内存的使用情况。
pm2停止、删除进程
  1. pm2 stop/delete 0:停止/删除id为 0 的进程;
  2. pm2 stop/delete all:停止/删除所有进程。
pm2重启、重载
  1. pm2 restart 0:重启id为 0 的进程;
  2. pm2 restart all:重启所有进程;
  3. pm2 reload 0:0秒停机重载id为 0 进程(用于 NETWORKED 进程);
  4. pm2 reload all:重载所有进程。
pm2日志操作
  1. pm2 logs:显示所有进程的日志;
  2. pm2 logs 0:显示进程id为 0 的日志;
  3. pm2 flush:清空所有日志文件;
  4. pm2 reloadLogs:重载所有日志。
pm2 startup:产生 init 脚本,保持进程活着。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值