搜尋

首頁  >  問答  >  主體

关于GC频次和堆内存大小设定

1.png

如上图, 现在这个应用平均3分钟左右就GC一次,感觉太频繁了。现在堆内存分配的是4GB,我看平均值始终没有2GB。内存是不是设置太大了?

各位,有没有好的调优的资料分享一下,先行谢过。

附上现用的启动参数:

JAVA_OPTS="-server
 -Xms4096m
 -Xmx4096m
 -Xmn1536m
 -XX:+HeapDumpOnOutOfMemoryError
 -XX:HeapDumpPath=/services/logs/xxxx/oom.hprof -XX:+UseParNewGC -XX:+UseConcMarkSweepGC
 -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+ExplicitGCInvokesConcurrent
 -XX:-UseBiasedLocking -XX:+AlwaysPreTouch -XX:+CMSParallelRemarkEnabled -XX:AutoBoxCacheMax=20000
 -Dwork.dir=${WORK_DIR}
 -Dcom.sun.management.jmxremote.port=8550
 -Dcom.sun.management.jmxremote.ssl=false
 -Dcom.sun.management.jmxremote.authenticate=false
 -Dlogger.file=${LOG_CONF} -Dfile.encoding=UTF-8 -Duser.timezone=UTC"

java version : 1.7.0_101

高洛峰高洛峰2944 天前866

全部回覆(1)我來回復

  • 三叔

    三叔2016-10-24 15:32:49

    看你的图应该是YGC,YGC这个频率没关系不算很频繁。

    要看资料的话可以看这个:

    https://segmentfault.com/a/11...

    https://segmentfault.com/a/11...


    回覆
    0
  • 取消回覆