我的项目是一个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。差距如何?
顺便说一句,元数据空间大小是256M,为什么非堆只有205.4M?最大非堆大小如何达到1.5G?
答案 0 :(得分:1)
我看到init堆大小是2G,但是在Spring Admin中最大堆大小是1.9G。差距如何?
堆的一个幸存空间始终为空,并且不包括在最大值的计算中。参见this question。
元数据空间大小为256M,为什么非堆只有205.4M?
-XX:MetaspaceSize=256M
未设置初始元空间大小。这是一个达到阈值时触发GC的阈值。有关详细信息,请参见JDK-8039867。
最大非堆大小如何达到1.5G?
非堆包括元空间(在您的情况下最大为256M),压缩类空间(默认为最大1G)和代码缓存(默认为最大240M)。