pm2及forever模块是目前较常用的nodejs进程守护模块,前者更常用些、功能也更强大(提供负载)。其原理主要是pm2开启一个主进程,另行再开子进程运行nodejs项目,主进程监听子进程,若子进程崩溃,pm2会自行将其启动,并且也可以对一个项目启动多个子进程,pm2主进程做随机转发请求。
npm install pm2 -g
pm2 start app.js //启动 pm2 ls //显示已启动的项目进程,会显示项目id / name 负载等信息 pm2 start app.js -i max //自动依赖电脑内核数,尽量启动多的进程 pm2 reload all //重新加载 pm2 restart [ app_name | id | all ] //重启项目,用于改了nodejs代码时,其不具备node-dev功能 pm2 stop [ app_name | id | all ] //停止某进程 pm2 logs