国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

nodeJS進程管理器pm2的使用

2019-11-19 12:18:25
字體:
來源:轉載
供稿:網友

pm2是一個帶有負載均衡功能的Node應用的進程管理器。當你要把你的獨立代碼利用全部的服務器上的所有CPU,并保證進程永遠都活著,0秒的重載, PM2是完美的。

PM2是開源的基于Nodejs的進程管理器,包括守護進程,監控,日志的一整套完整的功能,基本是Nodejs應用程序不二的守護進程選擇,事實上它并不僅僅可以啟動Nodejs的程序,只要是一般的腳本的程序它同樣可以勝任。

主要特性:

  • 內建負載均衡(使用Node cluster 集群模塊)
  • 后臺運行
  • 0秒停機重載(這項功能允許你重新載入代碼而不用失去請求連接。)
  • 具有Ubuntu和CentOS 的啟動腳本
  • 停止不穩定的進程(避免無限循環)
  • 控制臺檢測
  • 提供 HTTP API
  • 遠程控制和實時的接口API ( Nodejs 模塊,允許和PM2進程管理器交互 )

使用環境:

  • 僅能用于web應用
  • 運行于Node 0.11.x版本
  • 運行于 cluster 模式(默認模式)

安裝

npm install -g pm2

pm2安裝好后,會自動創建下面目錄:

/.pm2 /.pm2/logs  /.pm2/pids /.pm2/pm2.log /.pm2/pm2.pid /.pm2/rpc.sock /.pm2/pub.sock /.pm2/conf.js

用法

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                 # 顯示所有進程狀態pm2 monit                # 監視所有進程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              # 殺死全部進程

運行進程的不同方式:

$ pm2 start app.js -i max # 根據有效CPU數目啟動最大進程數目$ pm2 start app.js -i 3   # 啟動3個進程$ pm2 start app.js -x    #用fork模式啟動 app.js 而不是使用 cluster$ pm2 start app.js -x -- -a 23  # 用fork模式啟動 app.js 并且傳遞參數 (-a 23)$ pm2 start app.js --name serverone # 啟動一個進程并把它命名為 serverone$ pm2 stop serverone    # 停止 serverone 進程$ pm2 start app.json    # 啟動進程, 在 app.json里設置選項$ pm2 start app.js -i max -- -a 23          #在--之后給 app.js 傳遞參數$ pm2 start app.js -i max -e err.log -o out.log # 啟動 并 生成一個配置文件你也可以執行用其他語言編寫的app ( fork 模式):$ pm2 start my-bash-script.sh  -x --interpreter bash$ pm2 start my-python-script.py -x --interpreter python

pm2 list

列出由pm2管理的所有進程信息,還會顯示一個進程會被啟動多少次,因為沒處理的異常。

pm2 monit

監視每個node進程的CPU和內存的使用情況。

入門教程

挑我們最愛的express應用來舉例。一般我們都是通過npm start啟動應用,其實就是調用node ./bin/www。那么,換成pm2就是

pm2 start ./bin/www 

主站蜘蛛池模板:
定结县|
宁安市|
榆中县|
宝鸡市|
波密县|
六盘水市|
响水县|
革吉县|
马山县|
交口县|
报价|
临泽县|
莲花县|
东莞市|
桃园县|
泾阳县|
丰镇市|
冷水江市|
泰安市|
新泰市|
壶关县|
延安市|
漳浦县|
新巴尔虎右旗|
扶沟县|
鲜城|
五指山市|
苍溪县|
临沭县|
崇明县|
丰城市|
龙口市|
长子县|
嵊泗县|
抚宁县|
贞丰县|
西丰县|
临颍县|
凤山市|
千阳县|
额敏县|