pm2常用指令
1、node守护进程比较
1.)node守护进程比较
nodemon:开发环境使用,修改后自动重启。forever:管理多个站点,每个站点访问量不大,不需要监控。
pm2:网站访问量比较大,需要完整的监控界面。
2.)pm2主要特性
内建负载均衡(使用Node cluster 集群模块)后台运行
0秒停机重载
开机自启动脚本
停止不稳定的进程(避免无限循环)
控制台检测
提供远程控制和实时的接口API (允许和PM2进程管理器交互)
2、pm2常用命令
1.)安装
$ npm install -g pm2若pm2 -v 不起作用,把node目录下bin添加到PATH路径里
2.)单个启动
$ pm2 start app.js # 启动 $ pm2 start app.js -i 4 # 启动4个应用实例,自动负载均衡 # 监听文件变化,配合pm2 logs,方便本地开发 $ pm2 start app.js --watch
3.)批量启动
新建.json文件如server.json,配置如下:{ "apps": [{ "name": "appA", "script": "./appA.js", "watch": false }, { "name": "appB", "script": "./appB.js", "watch": false }] } ---------------------------------- # 再执行: $ pm2 start server.json批量启动是以restart模式启动,可以多次执行
4.)重启
$ pm2 restart app_name|app_id # 重启 $ pm2 restart all # 重启所有进程,相当stop+start $ pm2 reload all # 0秒停机重载进程 (用于不间断进程)
5.)查看
$ pm2 list # 查看进程 $ pm2 logs # 查看日志 $ pm2 show app_name|app_id # 查看进程详情 $ pm2 monit # 查看CPU和内存资源占用
6.)停止
$ pm2 stop app_name|app_id $ pm2 stop all # 停止所有
7.)删除
$ pm2 delete app_name|app_id # 从列表中删除指定的进程 $ pm2 delete all # 从列表中删除全部进程 $ pm2 kill # 杀死守护进程
8.)开机自启动
$ pm2 startup # 创建开机自启动命令 $ pm2 save # 保存当前应用列表 $ pm2 resurrect # 重新加载保存的应用列表 $ pm2 unstartup # 移除开机自启动
9.)pm2更新
$ pm2 save # 保存当前应用列表 $ npm install pm2 -g $ pm2 update