代码优化
null
释放内存。fs.createReadStream()
等流API分块处理大文件,避免一次性加载到内存。WeakMap
/WeakSet
管理缓存引用。配置调整
--max-old-space-size
参数设置堆内存上限(如node --max-old-space-size=4096 app.js
)。--trace-gc
参数分析垃圾回收行为,优化内存释放时机。工具监控与分析
heapdump
生成堆快照,通过Chrome DevTools分析内存泄漏。process.memoryUsage()
打印内存占用,或用pm2 monit
监控进程内存。系统级优化
swapon
命令增加交换空间,缓解物理内存不足。docker run -m 4g
),避免单个进程占用过多资源。其他策略