JVM调优记录

因为大量数据备份;导致在备份过程出现堆溢出的情况

当前情况

总内存:7.92G
已使用:3.7G
jvm总内存最大:3.06G
jvm非堆内存:最大1.23G,使用<170M
jvm堆内存:最大1.83G

计算

如果预留2G扩展内存,还可分配7.92G-3.7-2=2.22G
缩减非堆内存 预留最大非堆内存为512M:2.22G+1.23-0.5=2.95G
最终堆内存分配:1.83+2.95=4.78G
新生代分配:1.78G
old分配:3G

最终配置

-Xms2g -Xmx5g -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m -XX:NewSize=1g -XX:MaxNewSize=2g -XX:CompressedClassSpaceSize=100m

-XX:OldSize=3g(1.8不生效);
jvm内存调大明显导致停顿时间加长了;minorGc从原来的9ms增加到了82ms

图片对比

JVM调优记录_第1张图片
JVM调优记录_第2张图片
JVM调优记录_第3张图片
JVM调优记录_第4张图片
JVM调优记录_第5张图片
JVM调优记录_第6张图片
JVM调优记录_第7张图片

JVM调优记录_第8张图片
JVM调优记录_第9张图片

JVM调优记录_第10张图片
JVM调优记录_第11张图片
JVM调优记录_第12张图片
在这里插入图片描述

你可能感兴趣的:(jvm)