1

背景

在采用 egg 或 express 进行 Node 应用开发时,开发环境和生成环境是不一样的。

比如在 egg 中,开发时采用命令 npm run dev
而在生产环境中需要采用egg-scripts进行生产环境的部署。

在一般的 Node 应用中,如果我们想让 Node 可以在后台运行,在关闭时,这个进程依然存在,
我们把它叫做“进程守护”。

下面介绍一些常用的进程守护的方式。

nohup 命令

例如:nohup /root/start.sh &

forever

forever start app.js          #启动
forever stop app.js           #关闭
forever start -l forever.log -o out.log -e err.log app.js   #输出日志和错误

链接:https://github.com/foreverjs/...

pm2

pm2 start app.js;//启动项目
pm2 start app.js --watch;//启动项目并监听变化重启

pm2 list    ;//获取进程列表,每个列表都有id
pm2 monit  ;//查看所有进程详情

pm2 stop    ;//后面跟'id|name|all|json|stdin';
pm2 stop --watch 0 ;//停止监听0
pm2 restart ;//后面跟'id|name|all|json|stdin' ;
pm2 delete  ;//后面跟'name|id|script|all|json|stdin';

链接:http://pm2.keymetrics.io/


ImShengli
212 声望4 粉丝

学习一点未知的,总结一点思考的,分享一点好玩的。