真实案例之-MetaSpace分配过小导致JVM进程跑飞

发布网友 发布时间:2024-10-24 13:02

我来回答

1个回答

热心网友 时间:2024-11-13 05:22

在该例中使用的是G1垃圾回收器。

9点51分full gc出现,9点57分JVM进程跑飞。
各项指标如下:
9点51分,full gc出现而且很高。不知道什么原因,9点51分之后的gc监控没了,但是gc日志直到9点57一直都是有的。

从gc日志可以看出,可以看出是因为metaspace满了触发full gc

9点51因为full gc频率高,流量受影响。

9点51分及之后的cpu并没有因为gc频率的升高而升高。所以:gc频率高,cpu使用率并不一定高。

9点51分到9点57分之间,load也没变化,所以:gc频率高,load不一定高。
9点57分的load之所以这么高是因为什么呢?

线程状态:

metaspace的配置如下:
-XX:MaxMetaspaceSize=268435456(256K)
-XX:MetaspaceSize=268435456(256K)
通过监控发现,近几个月metaspace的空间在240-250M之间,本来metaspace就快用完了,只是今天爆发了而已。
增大metaspace到512M,问题解决!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com