iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 4
1
自我挑戰組

工作雜記隨筆系列 第 4

Day4. Linux用pm2來管理伺服器

  • 分享至 

  • xImage
  •  

pm2介紹

pm2 是一個管理 Node.js process 的工具,它可以讓我們用簡單的指令啟動 Node.js cluster 並最大化使用我們的 CPU,可以利用它來簡化很多node應用管理的繁瑣任務,如性能監控、自動重啟、負載均衡等,而且使用非常簡單。

安裝

使用npm安裝 npm install pm2 -g

目錄介紹

pm2安裝好後,會自動創建下面目錄。
$HOME/.pm2 將包含所有PM2相關文件
$HOME/.pm2/logs 將包含所有應用程序日誌
$HOME/.pm2/pids 將包含所有應用程序pids
$HOME/.pm2/pm2.log PM2記錄
$HOME/.pm2/pm2.pid PM2 pid
$HOME/.pm2/rpc.sock 遠程命令的套接字文件
$HOME/.pm2/pub.sock 可發布事件的套接字文件
$HOME/.pm2/conf.js PM2配置

啟動程序

pm2 start後面加上node.js 起始檔案
pm2 start app.js
使用叢集(cluster)的方式來起始檔案
pm2 start -i 4 --name server app.js

刪除Process

根據id, name刪除process
pm2 delete { id or name }

停止Process

根據id, name停止process
pm2 stop { id or name }

重新啟動Process

根據id, name重新啟動process
pm2 restart { id or name }

監控

列出目前所有已啟動的process並顯示他們目前的狀態, 按下ctrl+c 可以離開monitor
pm2 monit

利用叢集增加效能

請參考此篇文章:使用 pm2 啟動 Node.js cluster 以提升效能 截取作者實測結果報告:

可以發現開多個 process 處理的時候,消化 1000 個 request 的時間從 17.4 秒降到 9.9 秒,而每個 request 的回應時間也從 1668ms 降到 930ms,整體的速度大概快了兩倍(我的電腦是四核心,如果配備更好的話會快更多)

參考資料


上一篇
Day3. 在Linux與Windows間傳送檔案
下一篇
Day 5. VI文書處理器
系列文
工作雜記隨筆30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言