PM2的參數配置


https://github.com/jawil/blog/issues/7

 

配置項:

name  應用進程名稱;
script  啟動腳本路徑;
cwd  應用啟動的路徑,關於script與cwd的區別舉例說明:在/home/polo/目錄下運行/data/release/node/index.js,此處script為/data/release/node/index.js,cwd為/home/polo/;
args  傳遞給腳本的參數;
interpreter  指定的腳本解釋器;
interpreter_args  傳遞給解釋器的參數;
instances  應用啟動實例個數,僅在cluster模式有效,默認為fork;
exec_mode  應用啟動模式,支持fork和cluster模式;
watch  監聽重啟,啟用情況下,文件夾或子文件夾下變化應用自動重啟;
ignore_watch  忽略監聽的文件夾,支持正則表達式;
max_memory_restart  最大內存限制數,超出自動重啟;
env  環境變量,object類型,如{"NODE_ENV":"production", "ID": "42"};
log_date_format  指定日志日期格式,如YYYY-MM-DD HH:mm:ss;
error_file  記錄標准錯誤流,$HOME/.pm2/logs/XXXerr.log),代碼錯誤可在此文件查找;
out_file  記錄標准輸出流,$HOME/.pm2/logs/XXXout.log),如應用打印大量的標准輸出,會導致pm2日志過大;
min_uptime  應用運行少於時間被認為是異常啟動;
max_restarts  最大異常重啟次數,即小於min_uptime運行時間重啟次數;
autorestart  默認為true, 發生異常的情況下自動重啟;
cron_restart  crontab時間格式重啟應用,目前只支持cluster模式;
force  默認false,如果true,可以重復啟動一個腳本。pm2不建議這么做;
restart_delay  異常重啟情況下,延時重啟時間;

 

穩定運行建議

合理設置min_uptime,min_uptime是應用正常啟動的最小持續運行時長,超出此時間則被判定為異常啟動;
設定異常重啟延時restart_delay,對於異常情況導致應用停止,設定異常重啟延遲可防止應用在不可測情況下不斷重啟的導致重啟次數過多等問題;
設置異常重啟次數,如果應用不斷異常重啟,並超過一定的限制次數,說明此時的環境長時間處於不可控狀態,服務器異常。此時便可停止嘗試,發出錯誤警告通知等


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM