JVM-Xms对提交的内存和垃圾回收的影响

时间:2018-10-21 17:35:29

标签: optimization garbage-collection jvm heap-memory jvm-arguments

我们有一个带有以下参数的tomcat Xms 1克 Xmx 4克 平行气相色谱 它安装在具有JVM 1.8.181的Ubuntu计算机中

最近,GC正在全速启动,并且不允许任何其他进程继续进行。我不了解的是,即使总JVM仅为2.8 GB,而最大堆容量为4GB,也会发生这种情况。当内存尚未达到最大值时,为什么要运行完整的GC?

当我深入研究时,ii发现已用和已提交的内存突然发生变化;从1 + GB到〜4GB。这是否意味着因为我已将最小堆设置为1 GB,所以它只能达到1GB,并且一旦到达那里就增加到下一步?因此,垃圾收集发生了吗?

如果是,那是否意味着要避免这种情况,我需要增加最小堆大小?

更多信息-当流量几乎为0时,就会发生这种情况。没有后台进程正在进行。我知道它可以建立,但是不使用任何东西,它将如何上升! -我需要自己弄清楚。

1 个答案:

答案 0 :(得分:1)

将最小堆设置为1 GB时,它从1 GB堆开始,请注意,根据使用的库,进程本身可能比此多几百MB到几GB。即居民人数可以更大。

随着活动对堆的压力增加,它可能会决定需要增加堆大小。必须有相当大的负载才能触发此操作,否则它将不会更改堆。