1.
作用
jstat的主要作用就是对Java应用程序的资源和性能进行实时监控的命令行工具,主要包括GC情况和Heap Size资源使用情况。
jstat命令格式
jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
参数解释:
- option 常见的都是使用-gcutil查看gc情况,其他可选项见下图。
- vmid : VM的进程号,即当前运行的java进程号。
- interval : 间隔时间,单位为秒或毫秒
- count:打印次数,如果缺省则打印无数次。
option选项代表着用户希望查询的虚拟机信息,主要分为3类:类加载、垃圾收集和运行期编译状况。具体选项见下图:
参数interval和count代表查询间隔和次数,如果省略这两个参数,说明只查询一次。假设需要每250毫秒查询一次进程5828垃圾收集状况,一共查询5次,那命令行如下:
jstat -gc 5828 250 5
垃圾回收统计
查看gc的统计信息,关注点 主要是 已使用/总空间的占比情况。
jstat -gcutil 31798
运行截图(JDK1.8):
参数含义:
S0 | 年轻代中第一个survivor(幸存区)已使用的占当前容量百分比 |
s1 | 年轻代中第二个survivor(幸存区)已使用的占当前容量百分比 |
E | 年轻代中Eden已使用的占当前容量百分比 |
O | old代已使用的占当前容量百分比 |
M | 元空间(MetaspaceSize)已使用的占当前容量百分比 |
CCS | 压缩使用比例 |
YGC | 年轻代垃圾回收次数 |
FGC | 老年代垃圾回收次数 |
FGCT | 老年代垃圾回收消耗时间 |
GCT | 垃圾回收消耗总时间 |
堆内存使用情况统计
单位KB。
jstat -gccapacity 3400 20 20
运行截图(JDK1.8):
NGCMN | 新生代最小容量 |
NGCMX | 新生代最大容量 |
NGC | 当前新生代容量 |
S0C | 第一个幸存区大小 |
S1C | 第二个幸存区的大小 |
EC | 伊甸园区的大小 |
OGCMN | 老年代最小容量 |
OGCMX | 老年代最大容量 |
OGC | 当前老年代大小 |
OC | 当前老年代大小 |
MCMN | 最小元数据容量 |
MCMX | 最大元数据容量 |
MC | 当前元数据空间大小 |
CCSMN | 最小压缩类空间大小 |
CCSMX | 最大压缩类空间大小 |
CCSC | 当前压缩类空间大小 |
YGC | 年轻代gc次数 |
FGC | 老年代GC次数 |
类加载统计
jstat -class 3400 1000 100
Loaded | 加载class的数量 |
Bytes | 所占用空间大小 |
Unloaded | 未加载数量 |
Bytes | 未加载占用空间 |
Time | 时间 |
相关推荐
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解 本文将对一些常用的 JVM 性能调优监控工具进行介绍,包括 jps、jstack、jmap、jhat、jstat 等工具的使用详解。这些工具对于 Java 程序员来说是必备的,...
#### 三、jstat命令详解 ##### 1. 类的加载及卸载情况 (`-class`) `jstat -class <pid>` 命令用于查看类加载情况统计,输出的信息包括: - **Loaded**: 当前已加载的类的数量。 - **Bytes**: 已加载类占用的字节数。...
一、`jstat` 命令详解 `jstat`命令允许开发者查看JVM的各种统计数据,包括堆内存的使用情况、类加载数量、垃圾收集统计等。其基本格式如下: ```bash jstat [-命令选项] [vmid] [间隔时间(毫秒)] [查询次数] ``` ...
jstat命令详解 - `jstat -gcutil 进程ID 间隔时间` - `-gcutil`:查看GC使用情况。 - `进程ID`:指定要监控的Java进程ID。 - `间隔时间`:数据采集的间隔时间,单位为秒。 - 示例输出: - `S0`:Survivor space...
jstat命令的基本格式如下: ``` jstat [options] <vmid> [interval] [count] ``` - `options`:指定要查询的统计信息类型,如-gc、-gccapacity、-gccause等。 - `<vmid>`:虚拟机进程ID。 - `interval`:可选,指定...
要查看哪个进程频繁进行GC,可以使用以下命令: ``` jstat -gc <进程ID> <间隔时间> <次数> ``` 这里的`<进程ID>`是你想监控的Java进程的ID,`<间隔时间>`是收集数据的时间间隔,单位为毫秒,`<次数>`是你希望收集...
Java2语言命令详解 在Java开发中,理解并掌握各种命令行工具是至关重要的,特别是对于初学者和专业开发者来说。Java2语言命令主要指Java Development Kit (JDK) 提供的一系列命令行工具,它们在Java程序的编译、...
Java2 语言命令详解 Java2 语言是Java平台的核心组成部分,它提供了丰富的类库、强大的性能优化以及多线程支持。在Java2环境中,掌握各种命令行工具是每个开发者必备的技能。本文将深入探讨Java2语言命令的使用方法...
Java 2语言命令详解 Java 作为一门广泛使用的编程语言,其命令行工具在开发、编译、运行和管理Java程序中起着至关重要的作用。本文将深入探讨Java 2平台(J2SE)下的主要命令及其用法,帮助开发者更好地理解和掌握...
Java 2 应用命令详解 在 Java 开发和运行环境中,掌握各种命令行工具是至关重要的。Java 2 应用命令主要指的是用于管理、编译、运行和调试 Java 程序的一系列命令。这些命令使得开发者能够在不同的操作系统上高效地...
**JDK命令详解** 在Java开发中,JDK(Java Development Kit)是不可或缺的一部分,它提供了编译、运行和调试Java程序所需的所有工具。本文将深入解析JDK中的一些核心命令,帮助开发者更好地理解和利用这些工具。 #...
Java开发线上问题排查命令详解 Java开发中的线上问题排查命令详解是指在Java开发中使用的一些常用命令来排查和解决线上问题。这些命令主要来自JDK的lib/tools.jar类库,安装JVM时会被安装到机器的bin目录下。 以下...
JVM 监控管理及故障诊断工具 ...jps、jstat 和 jstatd 三种命令都是 JVM 监控管理及故障诊断的重要工具,它们可以帮助开发者快速地了解 JVM 的性能和资源消耗情况,从而进行合理的资源分配和性能优化。
### JVM监控工具详解 在Java开发与运维领域,掌握有效的监控工具对于确保应用程序的稳定运行至关重要。本文将深入探讨六种关键的JVM监控工具——`jstack`, `jconsole`, `jinfo`, `jmap`, `jdb`, `jstat`——它们...
"java学习资料04"很可能是包含了一些关于Java学习的重要资源,特别是“Java2语言命令详解”这个文件,它可能涵盖了Java开发中的核心概念和实用技巧。 在Java编程中,命令行工具是至关重要的,尤其是对于初学者来说...
#### 二、工具详解 ##### 1. jps - JVM Process Status Tool **用途**:列出当前系统中正在运行的所有HotSpot虚拟机进程,并显示每个进程的PID及主类名。 **命令格式**: ``` jps [options] [hostid] ``` **执行...
- 执行命令 `jstat -gcutil <pid>` 获取 GC 活动的统计数据。 - 分析 GC 频率和停顿时间,判断是否需要调整垃圾回收策略。 5. **使用 jps 查找 Java 进程** - 在需要时,使用 `jps` 命令快速找到 Java 进程的...
【Java JVM内存监控工具详解】 Java JVM内存监控是优化Java应用程序性能的关键环节,而VisualVM作为一款集成多种JDK命令行工具的可视化平台,提供了强大的分析功能。它包含的工具如jps、jstat、jmap、jinfo、jstack...
【Linux命令详解】 1. 创建文件的命令有多种方式: - `touch a.txt`:创建一个名为a.txt的新文件,如果文件已存在,将更新其时间戳。 - `vi a.txt`:使用vi(Visual Editor)编辑器创建新文件a.txt,进入编辑模式...