java調優之jstat命令和jinfo命令使用

jstat命令

基本用法:

invalid argument count
Usage: jstat -help|-options
       jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]

典型用法:
jstat -gc pid 時間間隔(毫秒)count

jstat -options

可以列出當前JVM版本支持的選項,常見的有

  1. class (類加載器)
    jstat –class : 顯示加載class的數量

Loaded 裝載的類的數量
Bytes 裝載類所佔用的字節數
Unloaded 卸載類的數量
Bytes 卸載類的字節數
Time 裝載和卸載類所花費的時間

  1. compiler (JIT)

Compiled 編譯任務執行數量
Failed 編譯任務執行失敗數量
Invalid 編譯任務執行失效數量
Time 編譯任務消耗時間
FailedType 最後一個編譯失敗任務的類型
FailedMethod 最後一個編譯失敗任務所在的類及方法

  1. gccause (最近一次GC統計和原因)

S0:年輕代中第一個survivor(倖存區)已使用的佔當前容量百分
S1:年輕代中第二個survivor(倖存區)已使用的佔當前容量百分比
E:年輕代中Eden(伊甸園)已使用的佔當前容量百分比
O:old代已使用的佔當前容量百分比
M:元空間(Metaspace)已使用的佔當前容量百分比,類似1.8之前的永久代(PermGen)
CCS:CCS表示的是Metaspace的使用率,也就是CCSU/CCSC算出來的
YGC:從應用程序啓動到採樣時年輕代中gc次數
YGCT:從應用程序啓動到採樣時年輕代中gc所用時間(s)
FGC:從應用程序啓動到採樣時old代(全gc)gc次數
FGCT:從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
GCT:從應用程序啓動到採樣時gc用的總時間(s)
LGCC:最近一次full gc的原因
GCC:

  1. gc (GC堆狀態) and gccapacity (各區大小)

S0C 年輕代中第一個survivor(倖存區)的容量 (KB)
S1C 年輕代中第二個survivor(倖存區)的容量 (KB)
S0U 年輕代中第一個survivor(倖存區)目前已使用空間 (KB)
S1U 年輕代中第二個survivor(倖存區)目前已使用空間 (KB)
EC 年輕代中Eden(伊甸園)的容量 (KB)
EU 年輕代中Eden(伊甸園)目前已使用空間 (KB)
OC Old代的容量 (KB)
OU Old代目前已使用空間 (KB)
PC Perm(持久代)的容量 (KB)
PU Perm(持久代)目前已使用空間 (KB)
YGC 從應用程序啓動到採樣時年輕代中gc次數
YGCT 從應用程序啓動到採樣時年輕代中gc所用時間(s)
FGC 從應用程序啓動到採樣時old代(全gc)gc次數
FGCT 從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
GCT 從應用程序啓動到採樣時gc用的總時間(s)

NGCMN 年輕代(young)中初始化(最小)的大小(KB)
NGCMX 年輕代(young)的最大容量 (KB)
NGC 年輕代(young)中當前的容量 (KB)
S0C 年輕代中第一個survivor(倖存區)的容量 (KB)
S1C 年輕代中第二個survivor(倖存區)的容量 (KB)
EC 年輕代中Eden(伊甸園)的容量 (KB)
OGCMN old代中初始化(最小)的大小 (KB)
OGCMX old代的最大容量 (KB)
OGC old代當前新生成的容量 (KB)
OC Old代的容量 (KB)
PGCMN perm代中初始化(最小)的大小 (KB)
PGCMX perm代的最大容量 (KB)
PGC perm代當前新生成的容量 (KB)
PC Perm(持久代)的容量 (KB)
YGC 從應用程序啓動到採樣時年輕代中gc次數
FGC 從應用程序啓動到採樣時old代(全gc)gc次數

  1. gcnew (新區統計) and cnewcapacity (新區大小)

S0C 年輕代中第一個survivor(倖存區)的容量 (KB)
S1C 年輕代中第二個survivor(倖存區)的容量 (KB)
S0U 年輕代中第一個survivor(倖存區)目前已使用空間 (KB)
S1U 年輕代中第二個survivor(倖存區)目前已使用空間 (KB)
TT 持有次數限制
MTT 最大持有次數限制
EC 年輕代中Eden(伊甸園)的容量 (KB)
EU 年輕代中Eden(伊甸園)目前已使用空間 (KB)
YGC 從應用程序啓動到採樣時年輕代中gc次數
YGCT 從應用程序啓動到採樣時年輕代中gc所用時間(s)

NGCMN 年輕代(young)中初始化(最小)的大小(KB)
NGCMX 年輕代(young)的最大容量 (KB)
NGC 年輕代(young)中當前的容量 (KB)
S0CMX 年輕代中第一個survivor(倖存區)的最大容量 (KB)
S0C 年輕代中第一個survivor(倖存區)的容量 (KB)
S1CMX 年輕代中第二個survivor(倖存區)的最大容量 (KB)
S1C 年輕代中第二個survivor(倖存區)的容量 (KB)
ECMX 年輕代中Eden(伊甸園)的最大容量 (KB)
EC 年輕代中Eden(伊甸園)的容量 (KB)
YGC 從應用程序啓動到採樣時年輕代中gc次數
FGC 從應用程序啓動到採樣時old代(全gc)gc次數

  1. gcold (老區統計) and gcoldcapacity (老區大小)

PC Perm(持久代)的容量 (KB)
PU Perm(持久代)目前已使用空間 (KB)
OC Old代的容量 (KB)
OU Old代目前已使用空間 (KB)
YGC 從應用程序啓動到採樣時年輕代中gc次數
FGC 從應用程序啓動到採樣時old代(全gc)gc次數
FGCT 從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
GCT 從應用程序啓動到採樣時gc用的總時間(s)

OGCMN old代中初始化(最小)的大小 (KB)
OGCMX old代的最大容量 (KB)
OGC old代當前新生成的容量 (KB)
OC Old代的容量 (KB)
YGC 從應用程序啓動到採樣時年輕代中gc次數
FGC 從應用程序啓動到採樣時old代(全gc)gc次數
FGCT 從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
GCT 從應用程序啓動到採樣時gc用的總時間(s)

  1. gcpermcapacity (永久區大小)

PGCMN perm代中初始化(最小)的大小 (KB)
PGCMX perm代的最大容量 (KB)
PGC perm代當前新生成的容量 (KB)
PC Perm(持久代)的容量 (KB)
YGC 從應用程序啓動到採樣時年輕代中gc次數
FGC 從應用程序啓動到採樣時old代(全gc)gc次數
FGCT 從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
GCT 從應用程序啓動到採樣時gc用的總時間(s)

  1. gcutil (GC統計彙總)

S0 年輕代中第一個survivor(倖存區)已使用的佔當前容量百分比
S1 年輕代中第二個survivor(倖存區)已使用的佔當前容量百分比
E 年輕代中Eden(伊甸園)已使用的佔當前容量百分比
O old代已使用的佔當前容量百分比
P perm代已使用的佔當前容量百分比
YGC 從應用程序啓動到採樣時年輕代中gc次數
YGCT 從應用程序啓動到採樣時年輕代中gc所用時間(s)
FGC 從應用程序啓動到採樣時old代(全gc)gc次數
FGCT 從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
GCT 從應用程序啓動到採樣時gc用的總時間(s)

  1. printcompilation (HotSpot編譯統計)

Compiled 編譯任務的數目
Size 方法生成的字節碼的大小
Type 編譯類型
Method 類名和方法名用來標識編譯的方法。類名使用/做爲一個命名空間分隔符。方法名是給定類中的方法。上述格式是由-XX:+PrintComplation選項進行設置的

jinfo命令

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章