yog-pmpm2 增强命令
yog-pm是在pm2的基础上提供了几个增强命令,提高pm2的易用性和稳定性。
安装
$ npm install -g yog-pm
使用
startOrReload : 启动pm2服务
服务没有启动时start服务,服务已经启动则会reload。
$ ypm startOrReload /home/wangcheng/demo/pm2-pro.json #利用pm2-pro.json文件启动引用
memwatch : 内存泄漏处理
检查pm2的子进程内存占用状况,对于超过内存设定值的子进程进行重启。
$ ypm memwatch /home/wangcheng/demo/pm2-pro.json ypm memwatch -s 250 #设置检测阀值为250M
daemon : 服务守护功能
pm2提供了startup功能利用linux的systemd或者startup守护pm2服务 但需要root权限,大多数线上机器都无法使用此功能,提供daemon命令守护pm2服务。
$ ypm daemon /home/wangcheng/demo/pm2-pro.json
配置
为了能够利用node的易安装特点,yog-pm支持非全局安装的pm2和node,需要在pm2的配置文件中指定pm2和node的安装目录。
-
pm2_bim : 指定pm2的安装目录,不指定默认为全局安装
-
node_bin : 指定node的安装目录,不指定默认为全局安装
[{ "name" : "pm_app", "script" : "examples/args.js", "pm2_bin" : "/home/users/***/pm2/bin" "node_bin" : "/home/users/***/node/bin" }]
配合crontab命令
memwatch、daemon等功能建议配合crontab一起使用。
* * * * * /home/users/wangcheng/.jumbo/bin/node /home/users/wangcheng/wenku-node/base/node_modules/.bin/ypm daemon /home/users/wangcheng/wenku-node/base/pm2-pro.json * * * * * /home/users/wangcheng/.jumbo/bin/node /home/users/wangcheng/wenku-node/base/node_modules/.bin/ypm memwatch -s 52
针对百度内部noah等提供了crontab功能,参考这里如何使用。
评论