为什么Spring Metrics显示初始堆大小大于最大大小?

时间:2018-10-17 02:32:42

标签: java spring-boot jvm

我的项目是一个Spring Boot应用程序(ver = 1.5.7.RELEASE,jdk = 1.8.0_131) 带有JVM选项:-Xms2048M -Xmx2048M -Xmn768M -XX:MaxMetaspaceSize = 256M -XX:MetaspaceSize = 256M。

我看到init堆大小是2G,但是在Spring Admin中最大堆大小是1.9G。差距如何? enter image description here

顺便说一句,元数据空间大小是256M,为什么非堆只有205.4M?最大非堆大小如何达到1.5G?

1 个答案:

答案 0 :(得分:1)

  

我看到init堆大小是2G,但是在Spring Admin中最大堆大小是1.9G。差距如何?

堆的一个幸存空间始终为空,并且不包括在最大值的计算中。参见this question

  

元数据空间大小为256M,为什么非堆只有205.4M?

-XX:MetaspaceSize=256M未设置初始元空间大小。这是一个达到阈值时触发GC的阈值。有关详细信息,请参见JDK-8039867

  

最大非堆大小如何达到1.5G?

非堆包括元空间(在您的情况下最大为256M),压缩类空间(默认为最大1G)和代码缓存(默认为最大240M)。

相关问题