.#背景
接到机器告警,告警信息是:【(SpanFullGCCollectionCount:18)FGC次数:18.0 FGC时间:32865.0】。
解决方案
开始觉得奇怪,为啥会突然有fullgc了,也没有什么太大的改动,于是乎开始折腾起来了。
解决步骤
①登陆机器确认概况
登陆机器后,执行jmap命令查看内存使用情况。
sudo bin/jmap -heap 进程ID
可以看到是perm区已经使用接近100%了。明显可以看到是类加载过多的情况
②解决方案
其中一个简单的方案就是增加perm区的空间。
-Xms4g -Xmx4g -Xmn2g -XX:PermSize=256m -XX:MaxPermSize=512m
将原有的perm区从96增大到256。重新启动后,不再有fullgc告警。增加后查看新的内存使用情况:
发现perm区使用率已经下降到70%了。