阅读量:3
一、配置内存限制
- 命令行参数:启动时使用
--max-old-space-size指定内存上限(单位:MB),如node --max-old-space-size=2048 your-app.js。 - 环境变量:通过
NODE_OPTIONS设置,如export NODE_OPTIONS=--max-old-space-size=2048,可添加到~/.bashrc永久生效。 - PM2管理:在
ecosystem.config.js中配置max_memory_restart,如max_memory_restart: '2G',超限时自动重启。 - Docker容器:运行时添加
--memory和--max-old-space-size参数,如docker run -m 4g --max-old-space-size=2g your-image。
二、代码层面优化
- 减少内存泄漏:避免全局变量,及时移除事件监听器,使用
heapdump工具检测泄漏。 - 流式处理数据:处理大文件时使用
fs.createReadStream等流操作,避免一次性加载到内存。 - 优化缓存:使用
node-cache等库缓存重复数据,避免重复计算。
三、系统级优化
- 调整内核参数:修改
/etc/sysctl.conf,降低vm.swappiness(如设为10)减少Swap使用,或提高vm.overcommit_memory(设为1)避免OOM。 - 增加物理内存:若应用内存需求高,直接升级服务器内存。
以上就是关于“centos nodejs内存配置技巧”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm