当前位置: 首页 > news >正文

pm2启动配置文件-实现负载均衡

  刚开始,在服务器上启动node应用时,是使用的命令 pm2 start ./bin/www --name my-node-app 来启动的,这个时候,当应用并发请求多个接口时,只会成功第一个接口,后续接口都会报错502,通过使用命令 pm2 monit 来查看node应用到监控面板,发现堆内存异常的高,存在内存泄露,估计是并发处理造成的oom引发的应用崩溃重启。所以,我们需要优化 pm2 启动配置,采用多实例+集群模式实现负载均衡,提升应用吞吐量和并发处理能力,同时配置应用内存阈值自动重启,防止应用崩溃或不稳定。

在这里我们改用配置文件的方式重新启动项目,这样的好处是命令增加配置太复杂,容易遗漏,配置文件的方式容易管理。

同时,我们也可以在配置文件中配置需要的环境变量,方便我们统一调用!

新增配置文件方式如下:

1、在根目录新建ecosystem.config.js

module.exports = {apps: [{name: "my-node-app",  // 应用名称script: "./bin/www",  // 入口文件instances: "max",  // 核心数实例(集群模式),可以为具体整数或者为'max',max表示会根据CPU核心数启动最大数量的进程实例(与 CPU 核心数相等)exec_mode: "cluster",  // 集群模式(是 PM2 实现多实例负载均衡的底层机制,基于 Node.js 内置的 cluster 模块,采用轮询策略自动将请求分发到各个实例,并共享同一个端口),通常与instances:'max'配合使用max_memory_restart: "1G",  // 内存阈值自动重启,防止内存泄漏导致服务崩溃或系统不稳定watch: false,  // 生产环境设为falselog_date_format: "YYYY-MM-DD HH:mm:ss Z",  // 日志时间格式error_file: "./logs/err.log",  // 错误日志out_file: "./logs/out.log",  // 普通日志combine_logs: true,  // 合并日志env: {    // 环境变量NODE_ENV: "production",}}]
};

 

注意:instances、exec_mode、max_memory_restart,这三个配置是重点!

2、启动项目

pm2 start ecosystem.config.js

可以看到多实例已经启动

image

3、在node中访问环境变量

process.env.NODE_ENV

4、验证:

再次并发执行接口调用,并发接口已经可以正常请求,问题解决!

http://www.jsqmd.com/news/582308/

相关文章:

  • 零基础入门:在快马平台上手运行你的第一个yolov5检测程序
  • 基于Matlab-Simulink的齿轮动力学纯扭转模型力学分析
  • 英语祈使句结构
  • 火车头+一些模板(本人自用)
  • 50 岁苹果:变与不变的科技传奇
  • 水质不达标?2026水处理设备厂家推荐排行 工业/医疗/商业适用 - 极欧测评
  • 巨有科技破局!清明五一市集 “营收困局”,数字化激活消费新场景
  • 锅炉内胆温度控制:西门子200 PLC与组态王6.53联机实战
  • 从安装到实战,在快马平台用python快速构建并部署一个文本分析web应用
  • Boss-Key老板键:Windows多窗口隐藏的终极解决方案
  • 2026年32支精棉拉架珠地供应商测评:广东佛山优质源头厂家选型指南 - 博客湾
  • Cursor功能解锁工具:开源技术方案深度解析与实战应用
  • 实战指南:在快马平台模拟wsl环境,从零开发并部署一个个人博客系统
  • 知名氢气发生器厂家盘点:性能稳定与用户口碑的观察视角 - 品牌推荐大师
  • 封不住!Claude Code爆改Python版加冕最快10万星,且clone且珍惜
  • 3.9%复合增速支撑!全球钾水玻璃2032年锚定7.03亿美元
  • 别再只调PWM占空比了!给STM32智能小车加上PID速度控制,让行驶更稳
  • 2026毕业论文降ai保姆级教程:盘点5个免费/好用降aigc工具+3招手动修改技巧 - 殷念写论文
  • 终极指南:微信单向好友检测的完整解决方案
  • 开源可部署剧本AI|像素剧本圣殿镜像免配置+Qwen2.5本地化教程
  • 阿里千问3.6:编程领域新突破与AI市场新变局
  • 快速原型设计:用快马一键生成vscode插件批量配置工具
  • 性价比首选!2026水处理设备厂家推荐排行 全资质认证 多场景适配 - 极欧测评
  • 忍者像素绘卷参数详解:画幅比例选择对忍者全身像/半身像构图影响
  • 2025-2026年全球移民服务机构推荐:十大口碑服务评测对比领先 - 十大品牌推荐
  • 基于Matlab模糊C均值聚类颜色空间转换处理GUI系统探秘
  • 精选10款市面配音可商用的配音软件
  • 基于储能单元SOC的下垂控制模型:光伏混合储能直流微网直流母线电压下垂控制与PI二次控制策略
  • 新手福音:用快马平台生成交互式mysql安装教程,零基础也能轻松上手
  • 动作捕捉系统在机器人研究中的作用与应用解析