内存优化管理
- 新生代
- 容量小,垃圾回收更快
- 老生代
- 容量大,垃圾回收更慢
- 减少内存使用,也是提高服务性能的手段
- 如果有内存泄漏,会导致服务性能大大降低
检测步骤
- 在压测过程中,对内存进行快照
- 在压测结束之后,再进行一次快照
- 可以发现在压测过程中,内存使用是 6.7 MB;
压测结束之后,内存使用是 6.6 MB; - Comparison 可以比较两个快照之间差异的情况
- 每个内存值的持有者
伪造内存泄露情况
- 创建一个很大的数组,不会被释放
- 在压测过程中进行快照,压力测试结束之后再进行一次快照
内存优化管理
- Nodejs Buffer 的内存分配策略
对于小于 8KB 的内存,分配 8KB 内存,每次都从这个 8KB 中进行分配,如果不够,再分配 8KB,类似于一个内存池