jstat的主要做用就是對Java應用程序的資源和性能進行實時監控的命令行工具,主要包括GC狀況和Heap Size資源使用狀況。html
jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
參數解釋:java
option選項表明着用戶但願查詢的虛擬機信息,主要分爲3類:類加載、垃圾收集和運行期編譯情況。具體選項見下圖:shell
參數interval和count表明查詢間隔和次數,若是省略這兩個參數,說明只查詢一次。假設須要每250毫秒查詢一次進程5828垃圾收集情況,一共查詢5次,那命令行以下:oracle
jstat -gc 5828 250 5
查看gc的統計信息,關注點 主要是 已使用/總空間的佔比狀況。工具
jstat -gcutil 31798
運行截圖(JDK1.8):性能
參數含義:spa
參數 | 描述 |
---|---|
S0 | 年輕代中第一個survivor(倖存區)已使用的佔當前容量百分比 |
s1 | 年輕代中第二個survivor(倖存區)已使用的佔當前容量百分比 |
E | 年輕代中Eden已使用的佔當前容量百分比 |
O | old代已使用的佔當前容量百分比 |
M | 元空間(MetaspaceSize)已使用的佔當前容量百分比 |
CCS | 壓縮使用比例 |
YGC | 年輕代垃圾回收次數 |
FGC | 老年代垃圾回收次數 |
FGCT | 老年代垃圾回收消耗時間 |
GCT | 垃圾回收消耗總時間 |
單位KB。.net
jstat -gccapacity 3400 20 20
運行截圖(JDK1.8):
命令行
參數 | 描述 |
---|---|
NGCMN | 新生代最小容量 |
NGCMX | 新生代最大容量 |
NGC | 當前新生代容量 |
S0C | 第一個倖存區大小 |
S1C | 第二個倖存區的大小 |
EC | 伊甸園區的大小 |
OGCMN | 老年代最小容量 |
OGCMX | 老年代最大容量 |
OGC | 當前老年代大小 |
OC | 當前老年代大小 |
MCMN | 最小元數據容量 |
MCMX | 最大元數據容量 |
MC | 當前元數據空間大小 |
CCSMN | 最小壓縮類空間大小 |
CCSMX | 最大壓縮類空間大小 |
CCSC | 當前壓縮類空間大小 |
YGC | 年輕代gc次數 |
FGC | 老年代GC次數 |
jstat -class 3400 1000 100
參數 | 描述 |
---|---|
Loaded | 加載class的數量 |
Bytes | 所佔用空間大小 |
Unloaded | 未加載數量 |
Bytes | 未加載佔用空間 |
Time | 時間 |