<server id="" address="127.0.0.1" port="6800">
<jvm-arg>-server</jvm-arg>
最大堆大小
<jvm-arg>-Xmx4096M</jvm-arg>
初始堆大小
<jvm-arg>-Xms4096M</jvm-arg>
年轻代大小
<jvm-arg>-Xmn1280M</jvm-arg>
设置年轻代中Eden区与Survivor区的大小比值
6意味这10-6-1=3 ,30%的内部会被浪费掉,用于保存未回收掉的对象,然后复制对象
<jvm-arg>-XX:SurvivorRatio=6</jvm-arg>
每个线程的堆栈大小
<jvm-arg>-Xss1024k</jvm-arg>
持久代大小
<jvm-arg>-XX:PermSize=256M</jvm-arg>
持久代大小
<jvm-arg>-XX:MaxPermSize=256M</jvm-arg>
并发收集器cms,cms作为老生代收集器时,默认新生代使用ParNew收集器,serial old 当CMS收集器出现concurrent mode failure的时候失败后的后备收集器
ParNew收集器实际上市串行收集器的多线程版本,是并行收集,还是需要“stop the world”,停止用户线程
CMS收集器采用标记-清理算法,是并发收集,用户线程和收集线程交替进行
新生代收集采用标记复制和标记整理算法
parNew+CMS+Serial Old
<jvm-arg>-XX:+UseConcMarkSweepGC</jvm-arg>
使用并发收集器时full gc 之后,开启对年老代的压缩,也就是进行一次碎片整理
<jvm-arg>-XX:+UseCMSCompactAtFullCollection</jvm-arg>
降低标记停顿
<jvm-arg>-XX:+CMSParallelRemarkEnabled</jvm-arg>
持久代进行GC
<jvm-arg>-XX:+CMSClassUnloadingEnabled</jvm-arg>
CMS并发收集
<jvm-arg>-XX:+ExplicitGCInvokesConcurrent</jvm-arg>
使用cms作为垃圾回收使用80%后开始CMS收集
<jvm-arg>-XX:CMSInitiatingOccupancyFraction=80</jvm-arg>
强制要求jvm每次都要抛出有堆栈的异常
<jvm-arg>-XX:-OmitStackTraceInFastThrow</jvm-arg>
<thread-max>778</thread-max>
<socket-timeout>30s</socket-timeout>
<keepalive-max>1556</keepalive-max>
<keepalive-timeout>60s</keepalive-timeout>
</server>