-XX:MetaspaceSize:默认值依赖于平台,通常在 20MB – 21MB 左右。例如,在 64 位 Linux 系统上,默认的 MetaspaceSize 大约是 21807104 字节(约 20.79MB)。这个值是元空间的初始大小,也是触发元空间垃圾回收的一个阈值。当元空间的使用量达到 MetaspaceSize 时,会触发一次垃圾回收尝试,以释放不再使用的类元数据。
-XX:MaxMetaspaceSize:默认没有上限(unlimited),意味着元空间可以使用系统的可用内存,直到系统内存耗尽。不过,在实际应用中,如果元空间不断增长,可能会导致系统内存不足,从而引发其他问题。
默认的元数据区比较小,由于web应用大量使用了aop,在应用启动时,会因为元数据空间不足,频繁发生minor gc 和 full gc,指定为128-256-512 就可以解决这个问题,
怎么定位gc问题,在java启动参数中,打印gc日志,查看gc日志进行分析,FULL GC 日志中grep FULL GC,minor gc 为GC
发表回复