背景
在採用 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`;