-server -Xms2g -Xmx2g -XX:PermSize=96m -XX:MaxPermSize=256m -Xmn1024m -verbose:gc
-Xloggc:/home/yahoo/output/logs/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps
-XX:+UseConcMarkSweepGC
-XX:+DisableExplicitGC
参数 | 说明 |
-server | 服务机模式,不配置默认的是-client |
-Xms2g -Xmx2g | 堆大小,线上的堆的最大值与最小值必须一致,省得jvm调整堆大小浪费性能。 |
-Xmn1024m | 堆中新生代大小,一般为堆的一半多些 |
-XX:PermSize=96m -XX:MaxPermSize=256m | jvm方法区空间大小 |
-Xloggc:/home/yahoo/output/logs/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps | 打GC日志,这不会给系统带来啥负担,建议线上机器都加上,方便调优和OutOfMemory后查错。 |
-verbose:gc | 将虚拟机的垃圾回收事件信息打印 |
-XX:+UseConcMarkSweepGC | 新生代采用ParNew GC方式,旧生代采用并发GC方式,以减少系统停顿时间为优先 |
-XX:+DisableExplicitGC | 禁止程序触发GC |
查看运行状态命令:
JAVA_HOME/bin/jstat -gcutil `pgrep java` 1000 10 (后三个参数是PID,扫描间隔时间单位毫秒,扫描次数)
JAVA_HOME/bin/jstat -gc `pgrep java` 1000 10