e.g.java
java -Xmx3550m -Xms3550m -Xss128k -XX:NewRatio=4 -XX:SurvivorRatio=4 -XX:MaxPermSize=16m - XX:MaxTenuringThreshold=0服务器
-Xmx5g:设置JVM最大可用内存为5G。并发
-Xms5g:设置JVM初始内存为5G。此值能够设置与-Xmx相同,以免每次垃圾回收完成后JVM从新分配内存。性能
-Xmn2g:设置年轻代大小为2G。整个堆内存大小 = 年轻代大小 + 年老代大小 + 持久代大小 。持久代通常固定大小为64m,因此增大年轻代后,将会减少年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。测试
-XX:+UseParNewGC:设置年轻代为并行收集。可与CMS收集同时使用。JDK5.0以上,JVM会根据系统配置自行设置,因此无需再设置此值。线程
-XX:ParallelGCThreads=8:配置并行收集器的线程数,即:同时多少个线程一块儿进行垃圾回收。此值最好配置与处理器数目相等。对象
-XX:SurvivorRatio=6:设置年轻代中Eden区与Survivor区的大小比值。根据经验设置为6,则两个Survivor区与一个Eden区的比值为2:6,一个Survivor区占整个年轻代的1/8。内存
-XX:MaxTenuringThreshold=30: 设置垃圾最大年龄(次数)。若是设置为0的话,则年轻代对象不通过Survivor区直接进入年老代。对于年老代比较多的应用,能够提升效率。若是将此值 设置为一个较大值,则年轻代对象会在Survivor区进行屡次复制,这样能够增长对象再年轻代的存活时间,增长在年轻代即被回收的几率。设置为30表示 一个对象若是在Survivor空间移动30次尚未被回收就放入年老代。io
-XX:+UseConcMarkSweepGC:设置年老代为并发收集。测试配置这个参数之后,参数-XX:NewRatio=4就失效了,因此,此时年轻代大小最好用-Xmn设置,所以这个参数不建议使用。效率