jstat命令詳解

做用

jstat的主要做用就是對Java應用程序的資源和性能進行實時監控的命令行工具,主要包括GC狀況和Heap Size資源使用狀況。html

jstat命令格式

jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]

參數解釋:java

  1. option 常見的都是使用-gcutil查看gc狀況,其餘可選項見下圖。
  2. vmid : VM的進程號,即當前運行的java進程號。
  3. interval : 間隔時間,單位爲秒或毫秒
  4. count:打印次數,若是缺省則打印無數次。

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 時間

更多操做

java高分局之jstat命令使用
官方文檔unix

相關文章
相關標籤/搜索