当前位置 - 股票行情交易網 - 財經資訊 - PM2 簡單使用,守護node進程

PM2 簡單使用,守護node進程

簡介

PM2是node進程管理工具,可以利用它來簡化很多node應用管理的繁瑣任務,如性能監控、自動重啟、負載均衡等,而且使用非常簡單。

下面就對PM2進行入門性的介紹,基本涵蓋了PM2的常用的功能和配置。

node項目線上環境需求

1、服務器穩定性;

2、充分利用服務器硬件資源,提高性能;

3、線上日誌記錄;

PM2功能

1、進程守護,系統奔潰自動重啟;

2、啟動多進程,充分利用cpu和內存;

3、自帶日誌記錄功能;

運行項目

name:應用程序名稱

cwd:應用程序所在的目錄

script:應用程序的腳本路徑

log_date_format:日誌打印時間格式配置

error_file:自定義應用程序的錯誤日誌文件

out_file:自定義應用程序日誌文件

pid_file:自定義應用程序的pid文件

instances:多進程配置

min_uptime:最小運行時間,這裏設置的是60s即如果應用程序在60s內退出,pm2會認為程序異常退出,此時觸發重啟max_restarts設置數量

max_restarts:設置應用程序異常退出重啟的次數,默認15次(從0開始計數)

cron_restart:定時啟動,解決重啟能解決的問題

watch:是否啟用監控模式,默認是false。如果設置成true,當應用程序變動時,pm2會自動重載。這裏也可以設置妳要監控的文件。

merge_logs:

exec_interpreter:應用程序的腳本類型,這裏使用的shell,默認是nodejs

exec_mode:應用程序啟動模式,這裏設置的是cluster_mode(集群),默認是fork

autorestart:啟用/禁用應用程序崩潰或退出時自動重啟

vizion:啟用/禁用vizion特性(版本控制)

基本使用

PM2 項目啟動,但是無法訪問:

pm2 kill 殺死所有進程,重新啟動

1、操作系統限制了單個進程的的大小,node在32位系統占用1.6內存,當個進程是受限制;

2、壹個進程奔潰了,其他進程不受影響

3、無法充分利用硬件資源;

多進程之間內存無法***享

利用redis對多進程進行***享數據

pm2官網: https://pm2.keymetrics.io/