怎么合理设置JVM内存分配的比例

jvm内存大小的设置可以参照Java Performance里面推荐公式来进行设置。
在这里插入图片描述

解释说明

  • java整个堆大小设置:Xmx和Xms设置为老年代存活对象的3-4倍,即FullGC之后的老年代内存占用的3-4倍。
  • 永久代PermSize和MaxPermSize设置为老年代存活对象的1.2-1.5倍。
  • 年轻代Xmn的设置为老年代存活对象的1-1.5倍。
  • 老年代的内存大小设置为老年代存活对象的2-3倍。
  • BTW:
    Sun官方建议年轻代的大小为整个堆的3/8左右,,所以按照上述设置的方式,基本符合Sun的建议。
    堆大小=年轻代大小+年老代大小, 即xmx=xmn+老年代大小 。 Permsize不影响堆大小。
    为什么要按照上面的来进行设置呢? 没有具体的说明,但应该是根据多种调优之后得出的一个结论。

猜你喜欢

转载自blog.csdn.net/xiaowanzi_zj/article/details/121506749
今日推荐