JVM内存参数详解以及配置调优(四)-输出日志文件
在进行JVM内存分析时,可以将一些日志文件进行输出,帮助我们进行性能诊断,在JVM的启动参数中添加需要的参数即可:
-verbose:gc 输出一些GC信息
-XX:+PrintGCDetails 输出GC详细信息
-XX:+PrintGCTimeStamps 包含时间戳信息
-Xloggc:filename 输出GC信息到日志文件
综合前面所讲的所有调优参数,一个可能的JVM启动参数信息如下:
-server -verbose:gc -Xloggc:gc.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+UseParallelGC -XX:+UseParallelOldGC -Xmx1000M -Xms1000M -XX:PermSize=64M -XX:MaxPermSize=128M -XX:NewSize=640M -XX:MaxNewSize=640M -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.10.34 -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
说明:
-XX:+UseParallelGC (说明:对于web server来说应该使用parallelgc,其throughput较大,但其pause time有可能大于1秒)
-XX:+UseParallelOldGC (说明major collection也使用multi thread)
-Xmx1000M -Xms1000M -XX:PermSize=64M -XX:MaxPermSize=128M -XX:NewSize=640M -XX:MaxNewSize=640M (说明:指定最大和最小的heap为相同)
-server -verbose:gc -Xloggc:gc.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+UseParallelGC -XX:+UseParallelOldGC -Xmx1000M -Xms1000M -XX:PermSize=64M -XX:MaxPermSize=128M -XX:NewSize=640M -XX:MaxNewSize=640M -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.10.34 -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
说明:
-XX:+UseParallelGC (说明:对于web server来说应该使用parallelgc,其throughput较大,但其pause time有可能大于1秒)
-XX:+UseParallelOldGC (说明major collection也使用multi thread)
-Xmx1000M -Xms1000M -XX:PermSize=64M -XX:MaxPermSize=128M -XX:NewSize=640M -XX:MaxNewSize=640M (说明:指定最大和最小的heap为相同)