PM2 Cluster vs Fork 模式详解

chat

一、Cluster 模式 vs Fork 模式

核心区别表格:

  • 进程数量:Cluster多个worker,Fork单进程
  • 利用多核:Cluster充分利用,Fork单核
  • 零停机部署:Cluster支持reload,Fork不支持
  • 内存占用:Cluster高,Fork低
  • 状态共享:Cluster不共享,Fork天然共享

Cluster 模式优点

  1. 充分利用多核 CPU
  2. 零停机部署
  3. 更高并发
  4. 进程隔离

Cluster 模式缺点

  1. 内存占用翻倍
  2. 状态不共享
  3. Session 问题
  4. 定时任务重复
  5. 调试复杂

Fork 模式优点

  1. 内存占用低
  2. 状态天然共享
  3. 定时任务不重复
  4. 调试简单

Fork 模式缺点

  1. 无法利用多核
  2. 无零停机部署
  3. 单点故障

二、reload vs restart

restart:先杀死再启动,有停机时间,适用所有模式

reload:先启动新的再杀死旧的,零停机,仅Cluster模式

三、环境变量更新

  • pm2 reload app:不会加载新环境变量
  • pm2 reload app --update-env:会加载
  • pm2 startOrReload ecosystem.config.js:会从配置文件读取

四、实践建议

Web服务用Cluster+startOrReload,定时任务用Fork+startOrRestart

版权声明:
作者:东明兄
链接:https://blog.crazyming.com/note/3286/
来源:CrazyMing
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
海报
PM2 Cluster vs Fork 模式详解
一、Cluster 模式 vs Fork 模式 核心区别表格: 进程数量:Cluster多个worker,Fork单进程 利用多核:Cluster充分利用,Fork单核 零停机部署:Cluster支持rel……
<<上一篇
下一篇>>
chat