解决Ubuntu上Node.js内存泄漏可按以下步骤操作:
top/htop
、pm2
监控进程内存,或通过node --inspect
结合Chrome DevTools分析内存。heapdump
生成堆快照,通过Chrome DevTools对比快照,定位全局变量、闭包、未清除的定时器/事件监听器等泄漏源。let/const
替代var
,及时清除定时器(clearInterval
)和事件监听器(removeListener
)。memwatch-next
监控内存泄漏并生成报告,或通过Node Clinic
等工具分析性能瓶颈。--max-old-space-size
参数设置内存上限(如4GB)。关键工具:heapdump
、Chrome DevTools、memwatch-next
、PM2。
核心原则:减少全局引用,及时释放资源,合理控制内存分配。