如何使用jstat获取堆使用?

时间:2017-05-02 10:45:09

标签: java heap-memory jstat

我正在运行jstat -gc(来自OpenJDK):

# jstat -gc 1
 S0C    S1C    S0U    S1U      EC       EU        OC         OU       MC     MU    CCSC   CCSU   YGC     YGCT    FGC    FGCT     GCT
287744.0 290304.0 88368.6  0.0   1469440.0 787186.5 2162176.0  1805969.7  945432.0 923880.4 136576.0 133284.0    268   32.797  21     30.089   62.886

如何阅读:

  1. 使用堆

  2. 堆大小

  3. max heap

  4. 从这个输出,就像VisualVM所示?

1 个答案:

答案 0 :(得分:6)

请参阅https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jstat.html以获取一般参考。

当前堆大小将是以" C"结尾的所有字段的总和。 - S0C,S1C,EC,OC(除了Metaspace,这是以&#34开头的字段; M")

使用的堆将是以" U"结尾的所有字段的总和。 - S0U,S1U,EU,OU(再次,除了元空间)。

请注意" C"值(当前)大于或等于" U"值(实际使用)。

要获得最大值,请使用-gccapacity标志运行jstat,并将所有以" MX"结尾的字段相加。 (NGCMX,OGCMX,......除了MCMX是元空间)。