2021-5-25 前端達人
PM2是node進程管理工具,可以利用它來簡化很多node應用管理的繁瑣任務,如性能監(jiān)控、自動重啟、負載均衡等,而且使用非常簡單。
全局安裝
npm install -g pm2
挑express應用來舉例。一般我們都是通過npm start啟動應用,其實就是調用node ./bin/www。那么,換成pm2就是
注意,這里用了–watch參數,意味著當你的express應用代碼發(fā)生變化時,pm2會幫你重啟服務(長時間監(jiān)測有可能會出現問題,這時需要重啟項目)
pm2 start ./bin/www –watch
參數說明:
–watch:監(jiān)聽應用目錄的變化,一旦發(fā)生變化,自動重啟。如果要精確監(jiān)聽、不見聽的目錄,最好通過配置文件。
-i –instances:啟用多少個實例,可用于負載均衡。如果-i 0或者-i max,則根據當前機器核數確定實例數目。
–ignore-watch:排除監(jiān)聽的目錄/文件,可以是特定的文件名,也可以是正則。比如–ignore-watch=”test node_modules “some scripts”“
-n –name:應用的名稱。查看應用信息的時候可以用到。
-o –output :標準輸出日志文件的路徑。
-e –error :錯誤輸出日志文件的路徑。
–interpreter :the interpreter pm2 should use for executing app (bash, python…)。比如你用的coffee script來編寫應用。
完整命令行參數列表:地址
pm2 start app.js –watch -i 2
pm2 restart app.js
停止特定的應用??梢韵韧ㄟ^pm2 list獲取應用的名字(–name指定的)或者進程id。
pm2 stop app_name|app_id
如果要停止所有應用,可以
pm2 stop all
pm2 stop app_name|app_id
pm2 stop all
pm2 list
pm2 start app.js –watch
*這里是監(jiān)控整個項目的文件
除了可以打開日志文件查看日志外,還可以通過pm2 logs來查看實時日志。
pm2 logs
pm2 save # 記得保存進程狀態(tài)
npm install pm2 -g
pm2 update
附pm2命令:
$ npm install pm2 -g # 命令行安裝 pm2 $ pm2 start app.js -i 4 # 后臺運行pm2,啟動4個app.js # 也可以把'max' 參數傳遞給 start # 正確的進程數目依賴于Cpu的核心數目 $ pm2 start app.js --name my-api # 命名進程 $ pm2 list # 顯示所有進程狀態(tài) $ pm2 monit # 監(jiān)視所有進程 $ pm2 logs # 顯示所有進程日志 $ pm2 stop all # 停止所有進程 $ pm2 restart all # 重啟所有進程 $ pm2 reload all # 0 秒停機重載進程 (用于 NETWORKED 進程) $ pm2 stop 0 # 停止指定的進程 $ pm2 restart 0 # 重啟指定的進程 $ pm2 startup # 產生 init 腳本 保持進程活著 $ pm2 web # 運行健壯的 computer API endpoint (http://localhost:9615) $ pm2 delete 0 # 殺死指定的進程 $ pm2 delete all # 殺死全部進程
藍藍設計建立了UI設計分享群,每天會分享國內外的一些優(yōu)秀設計,如果有興趣的話,可以進入一起成長學習,請掃碼藍小助,報下信息,藍小助會請您入群。歡迎您加入噢~~希望得到建議咨詢、商務合作,也請與我們聯系。
文章來源:博客園
分享此文一切功德,皆悉回向給文章原作者及眾讀者.免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。藍藍設計( bouu.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業(yè)提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務