JVM 生产配置

-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

你可能感兴趣的:(java,jvm,虚拟机,Yahoo)