nodejs pm2 進程管理工具使用指南


nodejs pm2 進程管理工具使用指南

引言

nodeJS 發展的今天,無疑是一個巨大的成功。雖然目前還比不上服務端的 JAVA、PHP等語言,但是誰能保證明天呢?~!

pm2 簡介

PM2.5是一個內置的負載平衡器Node.js應用生產過程管理。它允許您永久地保存應用程序,並在不停機的情況下重新加載它們

Install PM2

npm i -g pm2

使用方式

您可以使用命令的方式啟動一個項目。但是本文推薦使用配置文件的方式啟動項目。先說下命令吧。

重要的事情來了 如何使用配置文件~~~~

配置文件

Eg:

{
"apps" : [{
         "name":"test",

      "cwd":"/data/wwwroot/nodejs",

      "script":"./test.sh",

      "exec_interpreter":"bash",

      "min_uptime": "60s",

      "max_restarts": 30,

      "exec_mode" :"cluster_mode",

      "error_file" :"./test-err.log",

      "out_file":"./test-out.log",

      "pid_file":"./test.pid"

      "watch": false
}]
}

Eg 描述
Name String App 程序名稱
Script String App.js 主程序入口
Cwd String “/data/wwwroot/nodejs” 啟動目錄
Args String “-a 13 -b 12” 包含所有通過CLI腳本字符串參數
Interpreter S “/usr/bin/python” 啟動腳本相 默認 nodejs
interpreter_args S ”–harmony”
node_args S interpreter_args 的別名
instances N -1 啟動應用程序數目
exec_mode S “cluster” 啟動模式 可以是 “cluster” or “fork” 默認 fork
watch S || Array true 啟用監聽功能
ignore_watch A [”[/\]./”, “node_modules”] 忽略的監聽項
max_memory_restart S '150M' 程序超過指定內存就重新啟動
env Obj {“NODE_ENV”: “development”, “ID”: “42”} 環境變量
Env_ obj {“NODE_ENV”: “production”, “ID”: “89”}
source_map_support Boolean true 默認true 啟動 source Map
instance_var S “NODE_APP_INSTANCE”
log_date_format S “YYYY-MM-DD HH:mm Z” 日志的日期格式
error_file S 錯誤日志路徑
out_file S 輸出文件的路徑
combine_logs Boolean
merge_logs Boolean combine_logs的別名
pid_file S
min_uptime S 最小運行時間
listen_timeout N 8000 如果程序沒有監聽 則會自動重啟
kill_timeout N 1600
wait_ready

官網詳細地址

http://pm2.keymetrics.io/docs/usage/application-declaration/#advanced-features


免責聲明!

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



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