jvm的内存如何管理?典型设置:·java-xmx3550m-xms3550m-xmn2g-xss128k-xmx3550m:将JVM的大可用内存设置为3550m。-xms3550m:将JVM内存设置为3550m。此值可以设置为与-Xmx相同的值,以防止JVM在每次垃圾回收后重新分配内存。-Xmn2g:将年轻一代大小设置为2G。整个堆大小=年轻一代大小、老一代大小、持久一代大小。持续一代的规模一般固定在64M,因此增加年轻一代会减少老一代的规模。这个值对系统性能有很大的影响。Sun正式推荐配置为整个堆的3/8。-Xss128k:设置每个线程的堆栈大小。jdk5.0以后,每个线程的堆栈大小为1m,以前每个线程的堆栈大小为256K,调整应用线程所需的内存大小更为方便。在相同的物理内存中,减小此值可以生成更多线程。但是,操作系统对进程中的线程数有限制,不能无限期地生成。经验值约为3000~5000。·java-xmx3550m-xms3550m-xss128k-xx:newratio=4-xx:survivorratio=4-xx:maxpermsize=16mxx:maxtenuringthreshold=0-xx:newratio=4:设置年轻一代(包括伊甸园和两个幸存者)与老一代(不包括持久一代)的比率。如果设置为4,则年轻一代与老一代的比例为1:4,年轻一代与老一代的比例为整个堆栈的1/5。如果设置为4,则两个幸存者区域与一个伊甸园区域的比率为2:4,一个幸存者区域占整个年轻一代的1/6。-20:Maxtenuringthreshold=0:设置垃圾的大年限。如果设置为0,年轻一代对象将直接进入老一代对象,而不经过幸存者区域。对于老一代更多的应用,可以提高效率。如果将该值设置为更高的值,则年轻一代对象将在幸存者区域中被多次复制,这可以增加年轻一代对象的生存时间,并增加年轻一代对象被回收的概率。
分享文章:jvm方法区详解jvm的内存如何管理?-创新互联
URL分享:
http://cdkjz.cn/article/cdiddg.html