年轻代Xmn的设置为老年代存活对象的1-1.5倍。 老年代的内存大小设置为老年代存活对象的2-3倍。 BTW: 1、Sun官方建议年轻代的大小为整个堆的3/8左右, 所以按照上述设置的方式,基本符合Sun的建议。 2、堆大小=年轻代大小+年老代大小, 即xmx=xmn+老年代大小 。 Permsize不影响堆大小。
例如,要设置Xmn为128M,可以在启动命令中添加如下参数: java -Xmn128m -jar yourapp.jar Xss(线程堆栈大小)Xss参数用于设置每个线程的堆栈大小。每个Java线程都有自己的堆栈,用于存储局部变量和方法调用等信息。如果线程堆栈过小,可能会导致StackOverflowError错误;如果设置得太大,则会浪费可用内存。调整Xss参数可以帮助...
1. 了解 Xmn 参数。 Xmn 参数用于设置 JVM 的新生代内存大小。新生代是 JVM 内存中用于存放新创建的对象的区域。通过设置 Xmn 参数,可以控制新生代的大小,从而影响垃圾回收的性能和效率。 2. 设置 Xmn 大小。 通常情况下,建议将 Xmn 大小设置为整个堆内存的 1/3 到 1/4。例如,如果堆内存大小为 1GB,那么...
Xmn参数用于设置新生代的大小。新生代是Java堆内存中的一部分,主要用于存储新创建的对象。一般来说,新生代的大小应该根据应用程序的特点来进行设置,以优化内存使用和垃圾回收性能。在调整新生代大小时,需要注意不要将老年代(Old Generation)设置得过小,否则可能会导致频繁的Full GC,影响程序的性能。 XssXss参数用于设...
典型设置: java -Xmx3550m -Xms3550m -Xmn2g -Xss128k ①、-Xmx3550m:设置JVM最大可用内存为3550M. ②、-Xms3550m:设置JVM促使内存为3550m.此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存. ③、-Xmn2g:设置年轻代大小为2G.整个堆大小=年轻代大小 + 年老代大小 + 持久代大小.持久代一...
8、JVM参数的设置(特别是 –Xmx –Xms –Xmn-XX:SurvivorRatio -XX:MaxTenuringThreshold等参数的设置没有一个固定的公式,需要根据PV old区实际数据 YGC次数等多方面来衡量。为了避免promotion faild可能会导致xmn设置偏小,也意味着YGC的次数会增多,处理并发访问的能力下降等问题。每个参数的调整都需要经过详细的性能测...
-Xmn4g:设置年轻代大小为4G。整个堆大小=年轻代大小 + 年老代大小 + 持久代大小。持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。(注:这里默认的使用的JVM是Sun的Hotspot,而其中使用GC算法就是分代算法。若要了解详情,可以参考...
典型设置: java-Xmx3550m -Xms3550m -Xmn2g -Xss128k - Xmx3550m:设置JVM最大可用内存为3550M。 -Xms3550m:设置JVM促使内存为3550m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。 -Xmn2g:设置年轻代大小为2G。整个堆大小=年轻代大小 + 年老代大小 + 持久代大小。持久代一般固定大小...
-Xmn:新生代的内存空间大小,注意:此处的大小是(eden+ 2 survivor space)。与jmap -heap中显示的New gen是不同的。整个堆大小=新生代大小(YoungSize) + 老生代大小。 在保证堆大小不变的情况下,增大新生代后,将会减小老生代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。