title: JVM参数-码农阿华
keywords: jvm,java,jps jinfo,jstat,jmap
description:
jps
查看当前运行的java程序的进程id号。
jinfo 官网:https://docs.oracle.com/javase/7/docs/technotes/tools/share/jinfo.html
实时查看和调整JVM配置参数
- 查看参数:jinfo -flags 24984
- 修改:jinfo -flag +UseG1GC 24984
jstat:官网:https://docs.oracle.com/javase/6/docs/technotes/tools/share/jstat.html
查看虚拟机性能统计信息
The jstat command displays performance statistics for an instrumented Java HotSpot VM. The target JVM is identified by its virtual machine identifier, or vmid option.
查看类装载信息
jstat -class PID 1000 10 查看某个java进程的类装载信息,每1000毫秒输出一次,共输出10 次
查看垃圾收集信息
jstat -gc PID 1000 10
描述 | 说明 |
---|---|
S0C | 第一个幸存区的大小 |
S1C | 第二个幸存区的大小 |
S0U | 第一个幸存区的使用大小 |
S1U | 第二个幸存区的使用大小 |
EC | 伊甸园区的大小 |
EU | 伊甸园区的使用大小 |
OC | 老年代大小 |
OU | 老年代使用大小 |
MC | 方法区大小 |
MU | 方法区使用大小 |
CCSC | 压缩类空间大小 |
CCSU | 压缩类空间使用大小 |
YGC | 年轻代垃圾回收次数 |
YGCT | 年轻代垃圾回收消耗时间 |
FGC | 老年代垃圾回收次数 |
FGCT | 老年代垃圾回收消耗时间 |
GCT | 垃圾回收消耗总时间 |
生成堆转储快照
The jmap command prints shared object memory maps or heap memory details of a specified process, core file, or remote debug server.
打印出堆内存相关信息
-XX:+PrintFlagsFinal -Xms300M -Xmx300M
jmap -heap PID
dump出堆内存相关信息
jmap -dump:format=b,file=heap.hprof PID
要是在发生堆内存溢出的时候,能自动dump出该文件就好了
一般在开发中,JVM参数可以加上下面两句,这样内存溢出时,会自动dump出该文件
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=heap.hprof