java程序在運行的過程中,有時候我們會需要了解程序的內部運行情況,這個時候就可以使用jstat命令,jstat命令可以查看堆內存各部分的使用量,以及加載類的數量。命令的格式如下:
jstat命令格式:
jstat [Options] vmid [interval] [count]
參數說明:
Options,選項,我們一般使用 -gcutil 查看gc情況
vmid,VM的進程號,即當前運行的java進程號,可以使用 ps -ef|grep java 查看 java進行的id
interval,間隔時間,單位為秒或者毫秒
count,打印次數,如果缺省則打印無數次
示例:
類加載統計
jstat -class 14681

- Loaded:加載class的數量
- Bytes:所占用空間大小
- Unloaded:未加載數量
- Bytes:未加載占用空間
- Time:時間
編譯統計
jstat -compiler 14681
- Compiled:編譯數量。
- Failed:失敗數量
- Invalid:不可用數量
- Time:時間
- FailedType:失敗類型
- FailedMethod:失敗的方法
垃圾回收統計
jstat -gc 14681
- S0C:第一個幸存區的大小
- S1C:第二個幸存區的大小
- S0U:第一個幸存區的使用大小
- S1U:第二個幸存區的使用大小
- EC:伊甸園區的大小
- EU:伊甸園區的使用大小
- OC:老年代大小
- OU:老年代使用大小
- MC:方法區大小
- MU:方法區使用大小
- CCSC:壓縮類空間大小
- CCSU:壓縮類空間使用大小
- YGC:年輕代垃圾回收次數
- YGCT:年輕代垃圾回收消耗時間
- FGC:老年代垃圾回收次數
- FGCT:老年代垃圾回收消耗時間
- GCT:垃圾回收消耗總時間
堆內存統計
jstat -gccapacity 14681
- NGCMN:新生代最小容量
- NGCMX:新生代最大容量
- NGC:當前新生代容量
- S0C:第一個幸存區大小
- S1C:第二個幸存區的大小
- EC:伊甸園區的大小
- OGCMN:老年代最小容量
- OGCMX:老年代最大容量
- OGC:當前老年代大小
- OC:當前老年代大小
- MCMN:最小元數據容量
- MCMX:最大元數據容量
- MC:當前元數據空間大小
- CCSMN:最小壓縮類空間大小
- CCSMX:最大壓縮類空間大小
- CCSC:當前壓縮類空間大小
- YGC:年輕代gc次數
- FGC:老年代GC次數
新生代垃圾回收統計
jstat -gcnew 14681
- S0C:第一個幸存區大小
- S1C:第二個幸存區的大小
- S0U:第一個幸存區的使用大小
- S1U:第二個幸存區的使用大小
- TT:對象在新生代存活的次數
- MTT:對象在新生代存活的最大次數
- DSS:期望的幸存區大小
- EC:伊甸園區的大小
- EU:伊甸園區的使用大小
- YGC:年輕代垃圾回收次數
- YGCT:年輕代垃圾回收消耗時間
新生代內存統計
jstat -gcnewcapacity 14681
- NGCMN:新生代最小容量
- NGCMX:新生代最大容量
- NGC:當前新生代容量
- S0CMX:最大幸存1區大小
- S0C:當前幸存1區大小
- S1CMX:最大幸存2區大小
- S1C:當前幸存2區大小
- ECMX:最大伊甸園區大小
- EC:當前伊甸園區大小
- YGC:年輕代垃圾回收次數
- FGC:老年代回收次數
老年代垃圾回收統計
jstat -gcold 14681
- MC:方法區大小
- MU:方法區使用大小
- CCSC:壓縮類空間大小
- CCSU:壓縮類空間使用大小
- OC:老年代大小
- OU:老年代使用大小
- YGC:年輕代垃圾回收次數
- FGC:老年代垃圾回收次數
- FGCT:老年代垃圾回收消耗時間
- GCT:垃圾回收消耗總時間
老年代內存統計
jstat -gcoldcapacity 14681
- OGCMN:老年代最小容量
- OGCMX:老年代最大容量
- OGC:當前老年代大小
- OC:老年代大小
- YGC:年輕代垃圾回收次數
- FGC:老年代垃圾回收次數
- FGCT:老年代垃圾回收消耗時間
- GCT:垃圾回收消耗總時間
雲數據空間統計
jstat -gcmetacapacity 14681
- MCMN: 最小元數據容量
- MCMX:最大元數據容量
- MC:當前元數據空間大小
- CCSMN:最小壓縮類空間大小
- CCSMX:最大壓縮類空間大小
- CCSC:當前壓縮類空間大小
- YGC:年輕代垃圾回收次數
- FGC:老年代垃圾回收次數
- FGCT:老年代垃圾回收消耗時間
- GCT:垃圾回收消耗總時間
總結垃圾回收統計
jstat -gcutil 14681
- S0:幸存1區當前使用比例
- S1:幸存2區當前使用比例
- E:伊甸園區使用比例
- O:老年代使用比例
- M:元數據區使用比例
- CCS:壓縮使用比例
- YGC:年輕代垃圾回收次數
- FGC:老年代垃圾回收次數
- FGCT:老年代垃圾回收消耗時間
- GCT:垃圾回收消耗總時間
JVM編譯方法統計
jstat -printcompilation 14681
- Compiled:最近編譯方法的數量
- Size:最近編譯方法的字節碼數量
- Type:最近編譯方法的編譯類型。
- Method:方法名標識。