jstat使用实用教程

大概阅读5分钟,本教程非常实用,清晰案例展示,建议收藏

@

jstat简介

  1. Jstat位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。

  2. Jstat可以用来监视VM内存内的各种堆和非堆的大小及其内存使用量。

  3. jstat -class pid:显示加载class的数量,及所占空间等信息。

  4. jstat -compiler pid:显示VM实时编译的数量等信息。

  5. jstat -gc pid:可以显示gc的信息,查看gc的次数,及时间。中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc的总时间。

Jstat命令格式

jstat [optionsvmid [interval[s|ms] [count]]]

实例

命令:

jstat -gc -h3 6556 250 10

监控 gc ,每三行输出一次表头,监控的程序 pid 为 6556 ,没250ms 输出一次,一共 10 次。

返回值:

 S0C    S1C    S0U    S1U      EC       EU        OC         OU       MC     MU    CCSC   CCSU   YGC     YGCT    FGC    FGCT     GCT
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
 S0C    S1C    S0U    S1U      EC       EU        OC         OU       MC     MU    CCSC   CCSU   YGC     YGCT    FGC    FGCT     GCT
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
 S0C    S1C    S0U    S1U      EC       EU        OC         OU       MC     MU    CCSC   CCSU   YGC     YGCT    FGC    FGCT     GCT
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060
 S0C    S1C    S0U    S1U      EC       EU        OC         OU       MC     MU    CCSC   CCSU   YGC     YGCT    FGC    FGCT     GCT
4096.0 5120.0 3984.0  0.0   61952.0  47543.9   173568.0     56.0    11648.0 11076.1 1408.0 1239.5      6    0.060   0      0.000    0.060

截图:

在这里插入图片描述

参数详细解析

详细说明使用方法,简单易懂 -class
类加载器.

 Loaded: 已加载类的数量.
 Bytes: 已加载的内存数量,单位:kBs 
 Unloaded: 已卸载类的数量.
 Bytes:已卸载的内存数量,单位:kBs
 Time: 类加载和卸载的总时间.

-compiler
编译器.

 Compiled: 编译任务的数量
 Failed: 编译任务失败的数量.
 Invalid: 无效的编译任务数量
 Time: 所有编译任务所花时间总和.
 FailedType: 最新一次失败编译任务的类型.
 FailedMethod: 最新一次失败编译任务中的类名和方法

-gc
堆内存回收

 S0C: 当前幸存者区0的容量 (kB).
 S1C: 当前幸存者区1的容量(kB).
 S0U: 幸存者区0已用内存 (kB).
 S1U: 幸存者区1已用内存 (kB).
 EC: 伊甸园区容量 (kB).
 EU: 伊甸园区已用内存 (kB).
 OC: 当前老旧区容量 (kB).
 OU: 老旧区已用内存 (kB).
 MC: 元数据区容量 (kB).
 MU: 元数据区已用内存 (kB).
 CCSC: 类压缩区容量 (kB).
 CCSU: 类压缩区已用内存 (kB).
 YGC: 新生垃圾回收事件数量.
 YGCT: 新生垃圾回收时间.
 FGC: 垃圾回收事件总和.
 FGCT: 完整的一次垃圾回收时间.
 GCT: 所有的垃圾回收时间.

欢迎关注笔者公众号:JavaPub,白嫖原创电子书及实战项目
在这里插入图片描述

posted @   JavaPub  阅读(698)  评论(1编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· c# 半导体/led行业 晶圆片WaferMap实现 map图实现入门篇
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
点击右上角即可分享
微信分享提示