现象
1、heap的eden很快就被占满了,同时触发了minor gc
2、full gc之后只能释放部分内存(2g左右),同时from的object不断copy到old区,所以不断的触发full gc
解决办法
使用jprofiler跟踪内存变化,获取call tree。(jprofiler使用前面介绍过了)
排查过程
结论
通过上面的内存分配可以定位到主要内存分配的代码。优化相关逻辑
1、heap的eden很快就被占满了,同时触发了minor gc
2、full gc之后只能释放部分内存(2g左右),同时from的object不断copy到old区,所以不断的触发full gc
使用jprofiler跟踪内存变化,获取call tree。(jprofiler使用前面介绍过了)
通过上面的内存分配可以定位到主要内存分配的代码。优化相关逻辑