Node 進程守護

背景

在採用 egg 或 express 進行 Node 應用開發時,開發環境和生成環境是不同的。git

好比在 egg 中,開發時採用命令 npm run dev
而在生產環境中須要採用egg-scripts進行生產環境的部署。github

在通常的 Node 應用中,若是咱們想讓 Node 能夠在後臺運行,在關閉時,這個進程依然存在,
咱們把它叫作「進程守護」。express

下面介紹一些經常使用的進程守護的方式。npm

nohup 命令

例如:nohup /root/start.sh &json

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/...app

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/rest

相關文章
相關標籤/搜索