目錄頁:https://mp.csdn.net/postedit/95937156
1.jps
1.1. jps -l
輸出應用程序主類完整package名稱或jar完整名稱.
1.2. jps -v
列出jvm參數,
2. jstat
使用jstat -help查看參數格式如下:
- -t:可以在打印的列加上Timestamp列,用於顯示系統運行的時間
- -h:可以在週期性數據數據的時候,可以在指定輸出多少行以後輸出一次表頭
- vmid:進程pid
- interval: 執行每次的間隔時間(毫秒)
- count:總計輸出多少行結果,缺省值爲一直打
示例如下:
jstat具體有哪些options可以執行jstat -options查看,如下圖:
下面介紹頻繁GC時我自己常用的4種命令
2.1. jstat -gccause pid
顯示垃圾回收的相關信息(通-gcutil),同時顯示最後一次或當前正在發生的垃圾回收的誘因。
2.2. jstat -gc pid
顯示gc的信息,查看gc的次數及時間
- S0C:年輕代中第一個survivor(倖存區)的容量 (字節)
- S1C:年輕代中第二個survivor(倖存區)的容量 (字節)
- S0U :年輕代中第一個survivor(倖存區)目前已使用空間 (字節)
- S1U :年輕代中第二個survivor(倖存區)目前已使用空間 (字節)
- EC :年輕代中Eden(伊甸園)的容量 (字節)
- EU :年輕代中Eden(伊甸園)目前已使用空間 (字節)
- OC :Old代的容量 (字節)
- OU :Old代目前已使用空間 (字節)
- MC:metaspace(元空間)的容量 (字節)
- MU:metaspace(元空間)目前已使用空間 (字節)
- CCSC:壓縮類空間大小
- CCSC:壓縮類空間大小
- YGC :從應用程序啓動到採樣時年輕代中gc次數
- YGCT :從應用程序啓動到採樣時年輕代中gc所用時間(s)
- FGC :從應用程序啓動到採樣時old代(全gc)gc次數
- FGCT :從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
- GCT:從應用程序啓動到採樣時gc用的總時間(s)
2.3. jstat -gcutil pid
gc信息統計
- S0 :年輕代中第一個survivor(倖存區)已使用的佔當前容量百分比
- S1 :年輕代中第二個survivor(倖存區)已使用的佔當前容量百分比
- E :年輕代中Eden(伊甸園)已使用的佔當前容量百分比
- O:old代已使用的佔當前容量百分比
- M: 元空間已佔用的大小
- YGC :從應用程序啓動到採樣時年輕代中gc次數
- YGCT :從應用程序啓動到採樣時年輕代中gc所用時間(s)
- FGC :從應用程序啓動到採樣時old代(全gc)gc次數
- FGCT :從應用程序啓動到採樣時old代(全gc)gc所用時間(s)
- GCT:從應用程序啓動到採樣時gc用的總時間(s)
2.4. jstat -gccapacity pid
VM分代內存的使用和佔用大小。
- NGCMN :年輕代(young)中初始化(最小)的大小(字節)
- NGCMX :年輕代(young)的最大容量 (字節)
- NGC :年輕代(young)中當前的容量 (字節)
- S0C :年輕代中第一個survivor(倖存區)的容量 (字節)
- S1C : 年輕代中第二個survivor(倖存區)的容量 (字節)
- EC :年輕代中Eden(伊甸園)的容量 (字節)
- OGCMN :old代中初始化(最小)的大小 (字節)
- OGCMX :old代的最大容量(字節)
- OGC:old代當前新生成的容量 (字節)
- OC :Old代的容量 (字節)
- MCMN:metaspace(元空間)中初始化(最小)的大小 (字節)
- MCMX :metaspace(元空間)的最大容量 (字節)
- MC :metaspace(元空間)當前新生成的容量 (字節)
- CCSMN:最小壓縮類空間大小
- CCSMX:最大壓縮類空間大小
- CCSC:當前壓縮類空間大小
- YGC :從應用程序啓動到採樣時年輕代中gc次數
- FGC:從應用程序啓動到採樣時old代(全gc)gc次數