metaspace-oom

Metaspace OOM

现象

应用运行一段时间后抛出 java.lang.OutOfMemoryError: Metaspace,重启后恢复;堆内存看起来不高,但类加载数量持续增长。

快速定位

jcmd <PID> VM.metaspace
jcmd <PID> GC.class_stats | sort -k3 -n | tail
jstat -gcmetacapacity <PID> 1000 10

查看容器内存和 JVM 参数:

jcmd <PID> VM.flags | grep -E 'Metaspace|MaxRAM'
cat /sys/fs/cgroup/memory.max

常见根因

修复

相关命令