2

JVM监控工具jstat使用介绍 - 查拉图斯特拉面条

 11 months ago
source link: https://www.cnblogs.com/silgen/p/17490764.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

JVM监控工具jstat使用介绍

jstat 是 Java 自带的一个命令行工具,用于监控 JVM 运行时的状态信息。它可以通过以下格式的命令来调用:

jstat [option] <vmid> [<interval> [<count>]]

其中,option 表示需要查询的信息类型,如 -gc, -class, -compiler 等;vmid 表示目标 JVM 的进程 ID 或者进程名;interval 表示查询的时间间隔,单位为毫秒,默认值为 1000 毫秒;count 表示查询的次数,默认为无限次。

jstat 命令可以用来获取各种与 JVM 相关的状态信息。常用的 option 包括:

  • -gcutil:显示垃圾回收相关的概要信息
  • -class:显示加载类的数量、大小和加载时间等信息
  • -compiler:显示即时编译器相关的统计信息

例如,以下命令将显示进程 ID 为 12345 的 JVM 的堆内存使用情况和垃圾回收统计信息,每隔 1 秒钟输出一次,总共输出 5 次:

jstat -gcutil 12345 1000 5

注:该命令的输出结果包括 S0:Survivor Space 0 使用率、S1:Survivor Space 1 使用率、E:Eden Space 使用率、O:Old Space 使用率、M:Metaspace 使用率等列。

以下命令将显示进程 ID 为 12345 的 JVM 的类加载器信息,每隔 3 秒钟输出一次,总共输出 10 次:

jstat -class 12345 3000 10

注:该命令的输出结果包括 Loaded:已加载类数量、Bytes:已加载类占用空间等列。

以下命令将显示进程 ID 为 12345 的 JVM 的即时编译器相关统计信息,每隔 5 秒钟输出一次,总共输出 3 次:

jstat -compiler 12345 5000 3

注:该命令的输出结果包括 Compiled:已编译方法数量、Failed:编译失败的方法数量、Invalid:失效的方法数量等列。

总之,jstat 命令可以帮助我们获取 JVM 运行时的各种状态信息,有助于分析和优化 Java 程序性能。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK