java 15: jstat查看gc狀態


一,jstat:查看幫助或選項

1,查看幫助
[lhdop@blog ~]$ jstat --help
Usage: jstat --help|-options
       jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
...
2,查看可用的選項
[lhdop@blog ~]$ jstat -options
-class
-compiler
-gc
-gccapacity
-gccause
-gcmetacapacity
-gcnew
-gcnewcapacity
-gcold
-gcoldcapacity
-gcutil
-printcompilation

說明:劉宏締的架構森林是一個專注架構的博客,

網站:https://blog.imgtouch.com
本文: https://blog.imgtouch.com/index.php/2023/06/01/java-15-jstat-zha-kan-gc-zhuang-tai/

         對應的源碼可以訪問這里獲取: https://github.com/liuhongdi/
         或: https://gitee.com/liuhongdi

說明:作者:劉宏締 郵箱: 371125307@qq.com

二,jstat查看gc的常用命令

1,找一個java進程:
[lhdop@blog ~]$ jps
24723 Jps
20756 storeback-0.0.1-SNAPSHOT.jar
 
2,gc: 打印gc的信息:
[lhdop@blog ~]$ jstat -gc 20756
S0C    S1C    S0U    S1U      EC       EU        OC         OU       MC     MU    CCSC   CCSU   YGC     YGCT    FGC    FGCT    CGC    CGCT     GCT
0.0   6144.0  0.0   4712.7 73728.0    0.0     57344.0    34393.5   61132.0 59888.7 7372.0 6980.1     19    0.172   0      0.000   6      0.019    0.191
 

S0C: survivor 0區域的容量,以KB為單位
S1C: survivor 1區域的容量,以KB為單位
S0U: survivor 0區域的使用大小,以KB為單位
S1U: survivor 1區域的使用大小,以KB為單位
EC: Eden區域的容量,以KB為單位
EU: Eden區域的使用,以KB為單位
MC: Metaspace元數據區的 Committed Size,以KB為單位
MU: Metaspace元數據區的使用大小,以KB為單位
CCSC: Compressed class的Committed Size,以KB為單位
CCSU: Compressed class的使用大小,以KB為單位
OC: old區域的容量,以KB為單位
OU: old區域的使用,以KB為單位
YGC: young generation(年輕代)的GC次數
YGCT: young generation(年輕代)的GC消耗時間
FGC: full GC的次數
FGCT: full GC的消耗時間
CGC: 並發GC次數(G1 gc)
CGCT: 並發GC的消耗時間(G1 gc)
GCT: GC總消耗時間

3,gccause:顯示最近一次gc的原因
[lhdop@blog ~]$ jstat -gccause 20756
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT    CGC    CGCT     GCT    LGCC                 GCC
  0.00  76.70  52.78  59.98  97.97  94.68     19    0.172     0    0.000     6    0.019    0.191 G1 Evacuation Pause  No GC

S0: survivor 0區域的使用比例
S1: survivor 1區域的使用比例
E: Eden區域的使用比例
O: Old區域的使用比例
M: 元數據區域的使用比例
CCS: Compressed class空間的使用比例
YGC: young generation(年輕代)的GC次數
YGCT: young generation(年輕代)的GC消耗時間
FGC: full GC的次數
FGCT: full GC的消耗時間
CGC: 並發GC次數(G1 gc)
CGCT: 並發GC的消耗時間(G1 gc)
GCT: GC總消耗時間
LGCC: 上次GC的原因
GCC: 當前GC的原因

 
4,gcutil: 統計GC總體的情況
[lhdop@blog ~]$ jstat -gcutil 20756
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT    CGC    CGCT     GCT
  0.00  76.70  58.33  59.98  97.97  94.68     19    0.172     0    0.000     6    0.019    0.191
說明:與gccause相同,只是減少了LGCC/GCC 兩個字段
 
5,gcnew:新生代的統計信息
[lhdop@blog ~]$ jstat -gcnew 20756
S0C    S1C    S0U    S1U   TT MTT  DSS      EC       EU     YGC     YGCT
0.0  6144.0   0.0  4712.7  15  15  5120.0  73728.0  57344.0  19    0.172

S0C: survivor 0區域的容量
S1C: survivor 1區域的容量
S0U: survivor 0區域的使用大小,以KB為單位
S1U: survivor 1區域的使用大小,以KB為單位
TT: Tenuring threshold(新生代晉升到老年代的閥值)
MTT: 最大的Tenuring threshold
DSS: 所需的survivor區大小
EC: Eden區域的容量
EU: Eden區域的使用,以KB為單位
YGC: young generation(年輕代)GC次數
YGCT: young generation(年輕代)GC所需的時間

 
6,gcold:統計old代的信息
[lhdop@blog ~]$ jstat -gcold 20756
   MC       MU      CCSC     CCSU       OC          OU       YGC    FGC    FGCT    CGC    CGCT     GCT
61132.0  59888.7   7372.0   6980.1     57344.0     34393.5     19     0    0.000     6    0.019    0.191

MC: Metaspace元數據區的 Committed Size,以KB為單位
MU: Metaspace元數據區的使用大小,以KB為單位
CCSC: Compressed class的Committed Size,以KB為單位
CCSU: Compressed class的使用大小,以KB為單位
OC: old區域的容量,以KB為單位
OU: old區域的使用,以KB為單位
YGC: young generation(年輕代)的GC次數
FGC: full GC的次數
FGCT: full GC的時間
CGC: 並發GC次數(G1 gc)
CGCT: 並發GC的消耗時間(G1 gc)
GCT: 總的GC時間

 
7,gccapacity:統計內存池的創建和大小等統計信息
[lhdop@blog ~]$ jstat -gccapacity 20756
NGCMN    NGCMX     NGC     S0C   S1C       EC      OGCMN      OGCMX       OGC         OC       MCMN     MCMX      MC     CCSMN    CCSMX     CCSC    YGC    FGC   CGC
0.0 3932160.0  79872.0    0.0 6144.0  73728.0        0.0  3932160.0    57344.0    57344.0      0.0 1103872.0  61132.0      0.0 1048576.0   7372.0     19     0     6

NGCMN: 最小的新生代的大小
NGCMX: 最大的新生代大小
NGC: 目前新生代的大小
S0C: survivor 0區域的容量
S1C: survivor 1區域的容量
EC: Eden區域的容量
OGCMN: 最小old代大小
OGCMX: 最大old代大小
OGC: 目前old代大小
OC: 目前old space大小
MCMN: 最小metaspace大小
MCMX: 最大metaspace大小
MC: Metaspace元數據區的 Committed Size
CCSMN: Compressed class空間的最小容量
CCSMX: Compressed class空間的最大容量
CCSC: Compressed class的Committed Size
YGC: young generation的GC次數
FGC: full GC的次數
CGC: 並發GC次數(G1 gc)

 
8,gcnewcapacity:統計新生代各個區的大小信息
[lhdop@blog ~]$ jstat -gcnewcapacity 20756
  NGCMN      NGCMX       NGC      S0CMX     S0C     S1CMX     S1C       ECMX        EC      YGC   FGC   CGC
     0.0  3932160.0    79872.0      0.0      0.0 3932160.0   6144.0  3932160.0    73728.0    19     0     6

NGCMN: 最小的新生代的大小
NGCMX: 最大的新生代大小
NGC: 目前新生代的大小
S0CMX: survivor 0區域容量的最大值
S0C: survivor 0區域的容量
S1CMX: survivor 1區域容量的最大值
S1C: survivor 1區域的容量
ECMX: Eden區域容量的最大值
EC: Eden區域的容量
YGC: young generation的GC次數
FGC: full GC的次數
CGC: 並發GC次數(G1 gc)

9,gcoldcapacity:統計old代各個區的大小信息
[lhdop@blog ~]$ jstat -gcoldcapacity 20756
   OGCMN       OGCMX        OGC         OC       YGC   FGC    FGCT    CGC    CGCT     GCT
      0.0   3932160.0     57344.0     57344.0    19     0    0.000     6    0.019    0.191

OGCMN: 最小old代大小
OGCMX: 最大old代大小
OGC: 目前old代大小
OC: 目前old space大小
YGC: young generation的GC次數
YGCT: young generation的GC時間
FGC: full GC的次數
FGCT: full GC的時間
CGC: 並發GC次數(G1 gc)
CGCT: 並發GC耗時 (G1 gc)
GCT: 總的GC時間

 

10,gcmetacapacity:統計元數據區域的容量信息
[lhdop@blog ~]$ jstat -gcmetacapacity 20756
   MCMN       MCMX        MC       CCSMN      CCSMX       CCSC     YGC   FGC    FGCT    CGC    CGCT     GCT
     0.0  1103872.0    61132.0        0.0  1048576.0     7372.0    19     0    0.000     6    0.019    0.191

MCMN: 最小metaspace大小
MCMX: 最大metaspace大小
MC: Metaspace元數據區的 Committed Size
CCSMN: Compressed class空間的最小容量
CCSMX: Compressed class空間的最大容量
CCSC: Compressed class的Committed Size
YGC: young generation的GC次數
FGC: full GC的次數
FGCT: full GC的時間
CGC: 並發GC次數(G1 gc)
CGCT: 並發GC耗時 (G1 gc)
GCT: 總的GC時間

三,查看java的版本:

[lhdop@blog tools]$ java --version
java 15 2020-09-15
Java(TM) SE Runtime Environment (build 15+36-1562)
Java HotSpot(TM) 64-Bit Server VM (build 15+36-1562, mixed mode, sharing) 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM