代碼優化
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
),避免單個進程占用過多資源。其他策略