PM2 學習

pm2 是一個帶有負載均衡功能的Node應用的進程管理器颗圣。
當你要把你的獨立代碼利用全部的服務器上的所有CPU喳钟,并保證進程永遠都活著,0秒的重載在岂, PM2是完美的奔则。
它非常適合IaaS結構,但不要把它用于PaaS方案蔽午。

備注:SaaS易茬、PaaS和IaaS是云服務模式。
SaaS 軟件即服務,例如Google的 Gmail 郵箱服務.面向應用型用戶
PaaS 平臺即服務.例如Google的GAE,面向開發(fā)型用戶
IaaS 基礎架構即服務,例如亞馬遜的AWS抽莱,IaaS對于不知道新推出的應用程序/網(wǎng)站會有多成功的創(chuàng)業(yè)公司來說非常有用

主要特性:

內建負載均衡(使用Node cluster 集群模塊)
后臺運行
0秒停機重載范抓,我理解大概意思是維護升級的時候不需要停機.
具有Ubuntu和CentOS 的啟動腳本
停止不穩(wěn)定的進程(避免無限循環(huán))
控制臺檢測
提供 HTTP API
遠程控制和實時的接口API ( Nodejs 模塊,允許和PM2進程管理器交互 )

測試過Nodejs v0.11 v0.10 v0.8版本,兼容CoffeeScript,基于Linux 和MacOS.

安裝
npm install -g pm2

用法
npm install pm2 -g # 命令行安裝 pm2
pm2 start app.js -i 4 #后臺運行pm2食铐,啟動4個app.js
# 也可以把'max' 參數(shù)傳遞給 start
# 正確的進程數(shù)目依賴于Cpu的核心數(shù)目

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 # 產(chǎn)生 init 腳本 保持進程活著
pm2 web # 運行健壯的 computer API endpoint
pm2 delete 0 # 殺死指定的進程
pm2 delete all # 殺死全部進程

運行進程的不同方式:
pm2 start app.js -i max # 根據(jù)有效CPU數(shù)目啟動最大進程數(shù)目
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 并且傳遞參數(shù) (-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 傳遞參數(shù)
pm2 start app.js -i max -e err.log -o out.log # 啟動 并 生成一個配置文件
你也可以執(zhí)行用其他語言編寫的app ( fork 模式):
pm2 start my-bash-script.sh -x --interpreter bash
pm2 start my-python-script.py -x --interpreter python

0秒停機重載:
這項功能允許你重新載入代碼而不用失去請求連接匕垫。
注意:
僅能用于web應用
運行于Node 0.11.x版本
運行于 cluster 模式(默認模式)
pm2 reload all

CoffeeScript:
pm2 start my_app.coffee #這就是全部

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

image

pm2 monit
監(jiān)視每個node進程的CPU和內存的使用情況。

image

本文轉載于:https://github.com/Unitech/pm2

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末斟叼,一起剝皮案震驚了整個濱河市单芜,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌犁柜,老刑警劉巖洲鸠,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異馋缅,居然都是意外死亡扒腕,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門萤悴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來瘾腰,“玉大人,你說我怎么就攤上這事覆履√E瑁” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵硝全,是天一觀的道長栖雾。 經(jīng)常有香客問我,道長伟众,這世上最難降的妖魔是什么析藕? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮凳厢,結果婚禮上账胧,老公的妹妹穿的比我還像新娘。我一直安慰自己先紫,他們只是感情好治泥,可當我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著遮精,像睡著了一般居夹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天吮播,我揣著相機與錄音,去河邊找鬼眼俊。 笑死意狠,一個胖子當著我的面吹牛,可吹牛的內容都是我干的疮胖。 我是一名探鬼主播环戈,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼澎灸!你這毒婦竟也來了院塞?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤性昭,失蹤者是張志新(化名)和其女友劉穎拦止,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體糜颠,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡汹族,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了其兴。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片顶瞒。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖元旬,靈堂內的尸體忽然破棺而出榴徐,到底是詐尸還是另有隱情,我是刑警寧澤匀归,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布坑资,位于F島的核電站,受9級特大地震影響穆端,放射性物質發(fā)生泄漏盐茎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一徙赢、第九天 我趴在偏房一處隱蔽的房頂上張望字柠。 院中可真熱鬧,春花似錦狡赐、人聲如沸窑业。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽常柄。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間西潘,已是汗流浹背卷玉。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留喷市,地道東北人相种。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像品姓,于是被迫代替她去往敵國和親寝并。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,802評論 2 345