jvm jstat 内存分析

3 篇文章 0 订阅

jstat 的参数

-class 监视类装载、卸载数量,字节数,以及类装载所耗费的时间。
-gc 监视java堆状况,包括Eden区,Survivor区,Old区,Perm区的容量,已使用容量及YGC,FGC发生的次数及耗费的时间。
-gccapacity 监视Java堆各个区的最大,最小使用容量及配置容量。
-gcutil 监视Java堆各个区的空间使用百分比及YGC,FGC发生的次数及耗费的时间。
-gccause 同-gcutil功能相同,额外输出上一次GC产生的原因。
-compiler 输出JIT编译器编译过的方法个数,耗时等信息。
-printcompilation 输出已经被JIT编译的方法
  • 1、jstat –class <pid> : 显示加载class的数量,及所占空间等信息。显示列名 具体描述

    Loaded 装载的类的数量
    Bytes 装载类所占用的字节数
    Unloaded 卸载类的数量
    Bytes 卸载类的字节数
    Time 装载和卸载类所花费的时间

    jstat -class 12911 500 1000

  • 2、jstat -compiler <pid>显示VM实时编译的数量等信息。显示列名 具体描述

    Compiled 编译任务执行数量
    Failed 编译任务执行失败数量
    Invalid 编译任务执行失效数量
    Time 编译任务消耗时间
    FailedType 最后一个编译失败任务的类型
    FailedMethod 最后一个编译失败任务所在的类及方法

    jstat -compiler 12911 500 1000

  • 3、jstat -gc <pid>: 可以显示gc的信息,查看gc的次数,及时间。显示列名 具体描述

    S0C 年轻代中第一个survivor(幸存区)的容量 (字节)
    S1C 年轻代中第二个survivor(幸存区)的容量 (字节)
    S0U 年轻代中第一个survivor(幸存区)目前已使用空间 (字节)
    S1U 年轻代中第二个survivor(幸存区)目前已使用空间 (字节)
    EC 年轻代中Eden(伊甸园)的容量 (字节)
    EU 年轻代中Eden(伊甸园)目前已使用空间 (字节)
    OC Old代的容量 (字节)
    OU Old代目前已使用空间 (字节)
    PC Perm(持久代)的容量 (字节)
    PU Perm(持久代)目前已使用空间 (字节)
    YGC 从应用程序启动到采样时年轻代中gc次数
    YGCT 从应用程序启动到采样时年轻代中gc所用时间(s)
    FGC 从应用程序启动到采样时old代(全gc)gc次数
    FGCT 从应用程序启动到采样时old代(全gc)gc所用时间(s)
    GCT 从应用程序启动到采样时gc用的总时间(s)

    jstat -gc 12911 500 1000

  • 4、jstat -gccapacity <pid>:可以显示,VM内存中三代(young,old,perm)对象的使用和占用大小显示列名 具体描述

    NGCMN 年轻代(young)中初始化(最小)的大小(字节)
    NGCMX 年轻代(young)的最大容量 (字节)
    NGC 年轻代(young)中当前的容量 (字节)
    S0C 年轻代中第一个survivor(幸存区)的容量 (字节)
    S1C 年轻代中第二个survivor(幸存区)的容量 (字节)
    EC 年轻代中Eden(伊甸园)的容量 (字节)
    OGCMN old代中初始化(最小)的大小 (字节)
    OGCMX old代的最大容量(字节)
    OGC old代当前新生成的容量 (字节)
    OC Old代的容量 (字节)
    PGCMN perm代中初始化(最小)的大小 (字节)
    PGCMX perm代的最大容量 (字节)
    PGC perm代当前新生成的容量 (字节)
    PC Perm(持久代)的容量 (字节)
    YGC 从应用程序启动到采样时年轻代中gc次数
    FGC 从应用程序启动到采样时old代(全gc)gc次数

    jstat -gccapacity  12911 500 1000

    5、jstat -gcutil <pid>:统计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)

    jstat -gcutil  12911 500 1000

  • 6、jstat -gcnew <pid>:年轻代对象的信息。显示列名 具体描述

    S0C 年轻代中第一个survivor(幸存区)的容量 (字节)
    S1C 年轻代中第二个survivor(幸存区)的容量 (字节)
    S0U 年轻代中第一个survivor(幸存区)目前已使用空间 (字节)
    S1U 年轻代中第二个survivor(幸存区)目前已使用空间 (字节)
    TT 持有次数限制
    MTT 最大持有次数限制
    EC 年轻代中Eden(伊甸园)的容量 (字节)
    EU 年轻代中Eden(伊甸园)目前已使用空间 (字节)
    YGC 从应用程序启动到采样时年轻代中gc次数
    YGCT 从应用程序启动到采样时年轻代中gc所用时间(s)

    jstat -gcnew 12911 500 1000

  • 7、jstat -gcnewcapacity<pid>: 年轻代对象的信息及其占用量。显示列名 具体描述

    NGCMN 年轻代(young)中初始化(最小)的大小(字节)
    NGCMX 年轻代(young)的最大容量 (字节)
    NGC 年轻代(young)中当前的容量 (字节)
    S0CMX 年轻代中第一个survivor(幸存区)的最大容量 (字节)
    S0C 年轻代中第一个survivor(幸存区)的容量 (字节)
    S1CMX 年轻代中第二个survivor(幸存区)的最大容量 (字节)
    S1C 年轻代中第二个survivor(幸存区)的容量 (字节)
    ECMX 年轻代中Eden(伊甸园)的最大容量 (字节)
    EC 年轻代中Eden(伊甸园)的容量 (字节)
    YGC 从应用程序启动到采样时年轻代中gc次数
    FGC 从应用程序启动到采样时old代(全gc)gc次数
  • 8、jstat -gcold <pid>:old代对象的信息。显示列名 具体描述

    PC Perm(持久代)的容量 (字节)
    PU Perm(持久代)目前已使用空间 (字节)
    OC Old代的容量 (字节)
    OU Old代目前已使用空间 (字节)
    YGC 从应用程序启动到采样时年轻代中gc次数
    FGC 从应用程序启动到采样时old代(全gc)gc次数
    FGCT 从应用程序启动到采样时old代(全gc)gc所用时间(s)
    GCT 从应用程序启动到采样时gc用的总时间(s)
  • 9、stat -gcoldcapacity <pid>: old代对象的信息及其占用量。显示列名 具体描述

    OGCMN old代中初始化(最小)的大小 (字节)
    OGCMX old代的最大容量(字节)
    OGC old代当前新生成的容量 (字节)
    OC Old代的容量 (字节)
    YGC 从应用程序启动到采样时年轻代中gc次数
    FGC 从应用程序启动到采样时old代(全gc)gc次数
    FGCT 从应用程序启动到采样时old代(全gc)gc所用时间(s)
    GCT 从应用程序启动到采样时gc用的总时间(s)
  • 10、jstat -gcpermcapacity<pid>: perm对象的信息及其占用量。显示列名 具体描述

    PGCMN perm代中初始化(最小)的大小 (字节)
    PGCMX perm代的最大容量 (字节)
    PGC perm代当前新生成的容量 (字节)
    PC Perm(持久代)的容量 (字节)
    YGC 从应用程序启动到采样时年轻代中gc次数
    FGC 从应用程序启动到采样时old代(全gc)gc次数
    FGCT 从应用程序启动到采样时old代(全gc)gc所用时间(s)
    GCT 从应用程序启动到采样时gc用的总时间(s)
  • 11、jstat -printcompilation <pid>:当前VM执行的信息。显示列名 具体描述

    Compiled 编译任务的数目
    Size 方法生成的字节码的大小
    Type 编译类型
    Method 类名和方法名用来标识编译的方法。类名使用/做为一个命名空间分隔符。方法名是给定类中的方法。上述格式是由-XX:+PrintComplation选项进行设置的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值