SpringBoot项目频繁YoungGC的排查处理

今天,使用visualVM连接上了我们所作的SpringBoot项目,发现它的Eden区一直保持一定频率的增加,导致频繁YoungGC,这个项目刚启动,没有任何访问,出现这种情况不正常,借用大史的话说:“邪乎到家必有鬼!”。

SpringBoot项目频繁YoungGC的排查处理

排查!一定严厉的排查!我们使用visualVM的取样器来监控程序的内存。 一下就发现了有一个char[]一直在增多,增到100%后重新开始从0增多,如此往复。

SpringBoot项目频繁YoungGC的排查处理

我们打成war包后以java -jar方式启动,再次监控,发现运行丝滑,没有问题。

SpringBoot项目频繁YoungGC的排查处理

回到IDE的项目监控,我们产看线程

SpringBoot项目频繁YoungGC的排查处理

 是一个文件观察者一直在吃内存,原来这次危机是个乌龙事件,在IDE中启动项目,在运行代码时多加一层IDE的代理,而代理会监控代码的改动情况,因此一直在收集代码,对比有无变动,满了就垃圾回收。

上一篇:IDE选择&代码调试


下一篇:选择IDE