JVM工具之jstat

这篇具有很好参考价值的文章主要介绍了JVM工具之jstat。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

JVM工具之jstat查询GC统计信息分析

JVM工具之jstat查询GC统计信息分析jstat基本使用语法jstat -class 加载类统计jstat -compiler 编译统计jstat -gc 垃圾回收统计jstat -gccapacity 垃圾回收器内存空间统计jstat -gccause 垃圾回收器分析统计jstat -gcmetacapacity 元数据内存空间统计jstat -gcnew 新生代垃圾回收统计jstat -gcnewcapacity 新生代内存空间统计jstat -gcold 老年代垃圾回收统计jstat -gcoldcapacity 老年代内存空间统计jstat -gcutil 总垃圾回收统计jstat -printcompilation JVM编译方法统计

注意:在linux中,使用jdk1.8版本为例

jstat工具,检查JVM的整体运行情况,比较实用工具之一,当我们想看JVM内的Eden、survivor、年轻代、老年代以及年轻代垃圾回收次数、老年代垃圾回收次数、年轻代垃圾回收消耗时间、老年代垃圾回收消耗时间情况

jstat基本使用语法

基本使用语法:jstat -<options> PID <interval> <count>

<options>:表示jstat的选择项 
PID:表示进程号
<interval>:表示整数型间隔时间(ms 或者m) 默认是毫秒级别
<count>:表示在间隔时间中打印次数

除此之外,可以用jstat -help 查看,还可使用jstat -options 查看,jstat 有哪些选择项

[CBB@localhost ~]$ jstat -help
Usage: jstat -help|-options
       jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]

我们可以使用jps 来查询本地的进程号信息

jstat -options

[CBB@localhost ~]$ jstat -options
-class
-compiler
-gc
-gccapacity
-gccause
-gcmetacapacity
-gcnew
-gcnewcapacity
-gcold
-gcoldcapacity
-gcutil
-printcompilation
 

jstat -class 加载类统计

JVM工具之jstat

[root@localhost ~]# jstat -class 18750
Loaded  Bytes  Unloaded  Bytes     Time
  8859 16638.3        0     0.0      19.99
字段名称 表示含义
Loaded 加载class类的数量
Bytes 所占内存空间
Unloaded 未加载类的数量
Bytes 未加载类内存空间
Time 消耗时间

jstat -compiler 编译统计

JVM工具之jstat

[root@localhost ~]# jstat -compiler 18750
Compiled Failed Invalid   Time   FailedType FailedMethod
    4760      0       0    28.94          0
​
字段名称 表示含义
Compiler 编译成功数量
Failed 编译失败数量
Invalid 编译无效数量
Time 编译耗时
FailedType 编译失败的类型
FailedMethod 编译失败的方法

jstat -gc 垃圾回收统计

[root@localhost ~]# jstat -gc 18750
 S0C    S1C    S0U    S1U      EC       EU        OC         OU       MC     MU    CCSC   CCSU   YGC     YGCT    FGC    FGCT     GCT
26176.0 26176.0 17720.1  0.0   209792.0 115200.9  262144.0   24367.5   49880.0 47907.7 6188.0 5813.7      4    1.343   4      0.325    1.668
字段名称 表示含义
S0C 幸存区1容量(单位:字节)
S1C 幸存区2容量(单位:字节)
S0U 幸存区1使用容量(单位:字节)
S1U 幸存区2使用容量(单位:字节)
EC 伊甸园区容量(单位:字节)
EU 伊甸园区使用容量(单位:字节)
OC 老年区容量(单位:字节)
OU 老年区使用容量(单位:字节)
MC 方法区容量(单位:字节)
MU 方法区使用容量(单位:字节)
CCSC 压缩类空间容量(单位:字节)
CCSU 压缩类空间使用容量(单位:字节)
YGC 年轻代垃圾回收次数
YGCT 年轻代垃圾回收消耗时间
FGC 老年代垃圾回收次数
FGCT 老年代垃圾回收消耗时间(单位:秒)
GCT 垃圾回收器总耗时时间(单位:秒)

jstat -gccapacity 垃圾回收器内存空间统计

JVM工具之jstat

[root@localhost ~]# jstat -gccapacity 18750
 NGCMN    NGCMX     NGC     S0C   S1C       EC      OGCMN      OGCMX       OGC         OC       MCMN     MCMX      MC     CCSMN    CCSMX     CCSC    YGC    FGC
262144.0 262144.0 262144.0 26176.0 26176.0 209792.0   262144.0   262144.0   262144.0   262144.0      0.0 1093632.0  49880.0      0.0 1048576.0   6188.0      4     4
字段名称 表示含义
NGCMN 年轻代gc最小容量(单位:字节)
NGCMX 年轻代gc最大容量(单位:字节)
NGC 当前年轻代容量(单位:字节)
S0C 幸存区0容量(单位:字节)
S1C 幸存区1容量(单位:字节)
EC 伊甸园容量(单位:字节)
OGCMN 老年代gc最小容量(单位:字节)
OGCMX 老年代gc最大容量(单位:字节)
OGC 当前老年代gc容量(单位:字节)
OC 当前老年代容量(单位:字节)
MCMN 元数据最小容量(单位:字节)
MCMX 元数据最大容量(单位:字节)
MC 当前元数据使用容量(单位:字节)
CCSMN 压缩类最小容量(单位:字节)
CCSMX 压缩类最大容量(单位:字节)
CCSC 当前压缩类容量(单位:字节)
YGC 从应用程序启动到现在,年轻代垃圾回收次数
FGC 从应用程序启动到现在,老年代垃圾回收次数

jstat -gccause 垃圾回收器分析统计

JVM工具之jstat

[root@localhost ~]# jstat -gccause 18750 1000
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT    LGCC                 GCC
 67.70   0.00  55.25   9.30  96.05  93.95      4    1.343     4    0.325    1.668 CMS Final Remark     No GC
字段名称 表示含义
S0 幸存区1使用百分比
S1 幸存区2使用百分比
E 伊甸园区使用百分比
O 老年代使用百分比
M 元数据使用百分比
CCS 压缩类使用百分比
YGC 从应用程序启动到现在,年轻代垃圾回收次数
YGCT 从应用程序启动到现在,年轻代垃圾回收消耗时间(单位:秒)
FGC 从应用程序启动到现在,老年代垃圾回收次数
FGCT 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒)
GCT 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒)
LGCT
GCC

jstat -gcmetacapacity 元数据内存空间统计

JVM工具之jstat

[root@localhost ~]# jstat -gcmetacapacity 18750 1000
   MCMN       MCMX        MC       CCSMN      CCSMX       CCSC     YGC   FGC    FGCT     GCT
       0.0  1093632.0    49880.0        0.0  1048576.0     6188.0     4     4    0.325    1.668
​
字段名称 表示含义
MCMN 元数据最小容量(单位:字节)
MCMX 元数据最大容量(单位:字节)
MC 当前元数据容量大小(单位:字节)
CCSMN 压缩类最小空间容量(单位:字节)
CCSMX 压缩类最大空间容量(单位:字节)
CCSC 当前压缩类容量大小(单位:字节)
YGC 从应用程序启动到现在,年轻代垃圾回收次数
FGC 从应用程序启动到现在,老年代垃圾回收次数
FGCT 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒)
GCT 从应用程序启动到现在,垃圾回收总消耗时间(单位:秒)

jstat -gcnew 新生代垃圾回收统计

JVM工具之jstat

[root@localhost ~]# jstat -gcnew 18750
 S0C    S1C    S0U    S1U   TT MTT  DSS      EC       EU     YGC     YGCT
26176.0 26176.0 17720.1    0.0  6   6 13088.0 209792.0 115900.6      4    1.343
​
字段名称 表示含义
S0C 幸存区1容量(单位:字节)
S1C 幸存区2容量(单位:字节)
S0U 幸存区1使用容量(单位:字节)
S1U 幸存区2使用容量(单位:字节)
TT 对象在年轻代存活的次数
MTT 对象在年轻代存货的最大次数
DSS 指望的幸存区容量(单位:字节)
EC 伊甸园容量(单位:字节)
EU 伊甸园使用容量(单位:字节)
YGC 从应用程序启动到现在,年轻代垃圾回收次数
YGCT 从应用程序启动到现在,年轻代垃圾回收消耗时间(单位:秒)

jstat -gcnewcapacity 新生代内存空间统计

JVM工具之jstat

[root@localhost ~]# jstat -gcnewcapacity 18750
  NGCMN      NGCMX       NGC      S0CMX     S0C     S1CMX     S1C       ECMX        EC      YGC   FGC
  262144.0   262144.0   262144.0  26176.0  26176.0  26176.0  26176.0   209792.0   209792.0     4     4
字段名称 表示含义
NGCMN 年轻代最小容量(单位:字节)
NGCMX 年轻代最大容量(单位:字节)
NGC 当前年轻代容量大小(单位:字节)
S0CMX 幸存区1最大容量(单位:字节)
S1CMX 幸存区2最大容量(单位:字节)
S1C 当前幸存区2容量大小(单位:字节)
ECMX 伊甸园最大的容量(单位:字节)
EC 当前伊甸园容量(单位:字节)
YGC 从应用程序启动到现在,年轻代垃圾回收次数
FGC 从应用程序启动到现在,老年代垃圾回收次数

jstat -gcold 老年代垃圾回收统计

JVM工具之jstat

[root@localhost ~]# jstat -gcold 18750
   MC       MU      CCSC     CCSU       OC          OU       YGC    FGC    FGCT     GCT
 49880.0  47907.7   6188.0   5813.7    262144.0     24367.5      4     4    0.325    1.668
字段名称 表示含义
MC 方法区空间容量(单位:字节)
MU 方法区使用容量(单位:字节)
CCSC 压缩类空间容量(单位:字节)
CCSU 压缩类空间使用容量(单位:字节)
OC 老年代空间容量(单位:字节)
OU 老年代使用容量(单位:字节)
YGC 从应用程序启动到现在,年轻代垃圾回收次数
FGC 从应用程序启动到现在,老年代垃圾回收次数
FGCT 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒)
GCT 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒)

jstat -gcoldcapacity 老年代内存空间统计

JVM工具之jstat

[root@localhost ~]# jstat -gcoldcapacity 18750
   OGCMN       OGCMX        OGC         OC       YGC   FGC    FGCT     GCT
   262144.0    262144.0    262144.0    262144.0     4     4    0.325    1.668
字段名称 表示含义
OGCMN 老年代垃圾回收最小容量(单位:字节)
OGCMX 老年代垃圾回收最大容量(单位:字节)
OGC 当前老年代空间容量(单位:字节)
OC 老年代容量(单位:字节)
YGC 从应用程序启动到现在,年轻代垃圾回收次数
FGC 从应用程序启动到现在,老年代垃圾回收次数
FCGT 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒)
GCT 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒)

jstat -gcutil 总垃圾回收统计

JVM工具之jstat

[root@localhost ~]# jstat -gcutil 18750 1000
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT
 67.70   0.00  55.58   9.30  96.05  93.95      4    1.343     4    0.325    1.668
 67.70   0.00  55.58   9.30  96.05  93.95      4    1.343     4    0.325    1.668
 67.70   0.00  55.58   9.30  96.05  93.95      4    1.343     4    0.325    1.668
字段名称 表示含义
S0 幸存区1使用百分比
S1 幸存区2使用百分比
E 伊甸园使用百分比
O 老年区使用百分比
M 元数据使用百分比
CCS 压缩类使用百分比
YGC 年轻代垃圾回收次数
YGCT 从应用程序启动到现在,年轻代gc消耗时间(单位:秒)
FGC 从应用程序启动到现在,老年代垃圾回收次数
FGCT 从应用程序启动到现在,老年代垃圾回收消耗时间(单位:秒)
GCT 从应用程序启动到现在,垃圾回收器总消耗时间(单位:秒)

jstat -printcompilation JVM编译方法统计

JVM工具之jstat文章来源地址https://www.toymoban.com/news/detail-443555.html

[root@localhost ~]# jstat -printcompilation 18750
Compiled  Size  Type Method
    4821    160    1 java/util/BitSet nextSetBit
字段名称 表示含义
Compiled 最近方法编译的数量
Size 最近方法编译字节码的数量
Type 最近方法编译类型
Method 方法名标识

到了这里,关于JVM工具之jstat的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • jstat命令查看jvm内存情况及GC内存变化

    jstat [Options] pid [interval] [count] 参数说明: Options,选项,一般使用 -gc、-gccapacity查看gc情况 pid,VM的进程号,即当前运行的java进程号 interval,间隔时间(按该时间频率自动刷新当前内存情况),单位毫秒 count,打印次数,如果缺省则打印无数次 查看当前jvm内存情况 jstat -gc 12675

    2024年02月01日
    浏览(51)
  • JVM 查看配置 jinfo 及使用 jstat,查看堆栈jstack及GC

    1. Jinfo  查看正在运行的Java应用程序的扩展参数: 包含 JVM 参数与 java 系统参数 命令:  jinfo pid    2 jstat  查看堆内存使用情况及 GC 回收频率等: jstat [-命令选项] [vmid] [间隔时间(毫秒)] [查询次数]  2.1 jstat -gc pid 最常用,可以评估程序内存使用及GC压力整体情况   

    2024年02月13日
    浏览(26)
  • JVM监控和调优常用命令jps|jstat|jinfo|jmap|jhat|jstack实战

    性能优化 :通过JVM调优,可以提高Java应用程序的性能,减少响应时间,提高吞吐量,以更好地满足用户需求。性能优化可以加快应用程序的执行速度,减少延迟,提高用户体验。 内存管理 :JVM负责管理Java应用程序的内存。正确的内存管理可以避免内存泄漏和内存溢出等问

    2024年02月09日
    浏览(30)
  • 数据库性能测试实践:慢查询统计分析

    查看是否开启慢查询 mysql show variables like \\\'%slow%’; 如图所示: 系统变量log_slow_admin_statements 表示是否将慢管理语句例如ANALYZE TABLE和ALTER TABLE等记入慢查询日志 启用log_slow_extra系统变量 (从MySQL 8.0.14开始提供)将导致服务器将几个额外字段写入日志 Log_slow_slave_statements 从库默认

    2024年02月07日
    浏览(43)
  • 学习笔记-JVM-工具包(JVM分析工具)

    常用工具 JDK工具 ① jps: JVM Process status tool:JVM进程状态工具,查看进程基本信息 ② jstat: JVM statistics monitoring tool : JVM统计监控工具,查看堆,GC详细信息 ③ jinfo:Java Configuration Info :查看配置参数信息,支持部分参数运行时修改 ④ jmap:Java Memory Map :分析堆内存工具,du

    2024年02月13日
    浏览(54)
  • MySQL场景分析--按照班级查询,并统计各班级男、女的人数和总人数

    现在有一张学生表,字段如下。请按照班级查询,并统计各班级男、女的人数和总人数。 Group by SQL GROUP BY 子句用来根据指定的字段对结果集(选取的数据)进行分组,如果某些记录的指定字段具有相同的值,那么它们将被合并为一条数据。 通俗地理解,GROUP BY 子句将根据指

    2024年02月05日
    浏览(47)
  • 【Java可执行命令】(十七)JVM运行时信息动态维护工具 jinfo:一个维护 JVM 相关的配置参数和系统属性的工具,辅助故障排除、诊断和优化 ~

    jinfo 是 Java Development Kit (JDK) 自带的一款命令行工具。它旨在为用户提供进程的运行时信息,特别是与 Java 虚拟机 (JVM) 相关的配置和系统属性。 jinfo 使得用户可以轻松地查看和修改正在运行的 Java 进程的参数,以便进行 故障排除、诊断和优化 。 jinfo 允许用户动态查询和修改

    2024年02月13日
    浏览(40)
  • jvm-日志分析工具gcviewer的使用

    gcviewer是什么?     GCViewer是一个小工具,可以可视化Sun / Oracle、IBM、HP和BEA Java虚拟机生成的详细GC输出。它是在GNU LGPL下发布的自由软件。---官网翻译 gcviewer的使用 文章使用的配置 工具 环境或版本 idea 2021 系统 ios(mac) jdk 1.8 官网:https://github.com/chewiebug/GCViewer 下载:http

    2024年02月04日
    浏览(34)
  • JVM分析工具JProfiler介绍及安装

    目录 一、什么是JProfiler? 二、JProfiler 功能结构  1、分析代理 2、记录数据 3、快照 三、安装  JProfiler是一个专业的工具,用于分析运行中的JVM内部发生的事情。当您的生产系统出现问题时,您可以在开发、质量保证和消防任务中使用它。 JProfiler主要处理四个主题: 方法调

    2024年02月14日
    浏览(34)
  • JVM:性能监控工具分析和线上问题排查实践

    在日常开发过程中,多少都会碰到一些jvm相关的问题,比如: 内存溢出、内存泄漏、cpu利用率飙升到100%、线程死锁、应用异常宕机 等。 在这个日益内卷的环境,如何运用好工具分析jvm问题,成为每个java攻城狮必备的技能。所以白梦特意整理了 jdk自带分析工具的使用 ,以及

    2024年01月19日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包