Sun JVM的配备

Sun JVM的配置
使用SunJVM比较好的内存分配的参数:
-Xms2048m -Xmx2048m -XX:PermSize=64M -XX:MaxPermSize=512m -XX:MaxNewSize=512m -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSFullGCsBeforeCompaction=2 -XX:+CMSParallelRemarkEnabled -XX:SoftRefLRUPolicyMSPerMB=0


-Xms2048m                                  :分配给JVM的最小内存
-Xmx2048m                                  :分配给JVM的最大内存
-XX:PermSize=128M                          :分配给永久代的初始大小
-XX:MaxPermSize=512m                       :分配给永久代的最大内存
-XX:MaxNewSize=512m                        :分配给新生代的最大内存
-XX:+UseConcMarkSweepGC;                   :采用并发内存回收机制
-XX:+UseCMSCompactAtFullCollection;        :在FULL GC的时候,启用内存压缩
-XX:CMSInitiatingOccupancyFraction=70;     :堆内存到底70%时开始启动内存回收
-XX:+UseCMSInitiatingOccupancyOnly;        :配合堆内存参数CMSInitiatingOccupancyFraction使用
-XX:CMSFullGCsBeforeCompaction=5;          :五次内存回收之后开始进行内存碎片整理,避免因内存碎片碎片过多造成内存空间无法分配
-XX:+CMSParallelRemarkEnabled;             :降低回收停顿时间
-XX:SoftRefLRUPolicyMSPerMB=0              :配合参数CMSInitiatingOccupancyFraction使用


参考资料:
http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
http://www.cnblogs.com/dartagnan/archive/2011/09/25/2190507.html