`
javayestome
  • 浏览: 1040914 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

jstat命令(Java Virtual Machine Statistics Monitoring Tool)

阅读更多

JDK内置工具使用

一、javah命令(CHeaderandStubFileGenerator)

二、jps命令(JavaVirtualMachineProcessStatusTool)

三、jstack命令(JavaStackTrace)

四、jstat命令(JavaVirtualMachineStatisticsMonitoringTool)

五、jmap命令(JavaMemoryMap)

六、jinfo命令(JavaConfigurationInfo)

七、jconsole命令(JavaMonitoringandManagementConsole)

八、jvisualvm命令(JavaVirtualMachineMonitoring,Troubleshooting,andProfilingTool)

九、jhat命令(JavaHeapAnalyseTool)

十、Jdb命令(TheJavaDebugger)

1、介绍

JstatJDK自带的一个轻量级小工具。全称“JavaVirtualMachinestatisticsmonitoringtool”,它位于javabin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heapsize和垃圾回收状况的监控。可见,Jstat是轻量级的、专门针对JVM的工具,非常适用。由于JVM内存设置较大,图中百分比变化不太明显一个极强的监视VM内存工具。可以用来监视VM内存内的各种堆和非堆的大小及其内存使用量。

jstat工具特别强大,有众多的可选项,详细查看堆内各个部分的使用量,以及加载类的数量。使用时,需加上查看进程的进程id,和所选参数。

它主要是用来显示GCPermGen相关的信息,如果对GC不怎么了解,先看这篇文章:http://blog.csdn.net/fenglibing/archive/2011/04/13/6321453.aspx,否则其中即使你会使用jstat这个命令,你也看不懂它的输出。

2、命令格式

jstat[generalOption|outputOptionsvmid[interval[s|ms][count]]]

3、参数说明

1)、generalOption:单个的常用的命令行选项,如-help,-options,-version

2)、outputOptions:一个或多个输出选项,由单个的statOption选项组件,可以-t,-h,and-J选项配合使用。

statOption

-classOption

-compilerOption

-gcOption

-gccapacityOption

-gccauseOption

-gcnewOption

-gcnewcapacityOption

-gcoldOption

-gcoldcapacityOption

-gcpermcapacityOption

-gcutilOption

-printcompilationOption

注:其中最常用的就是-gcutil选项了,因为他能够给我们展示大致的GC信息。

Option:指的是vmid、显示间隔时间及间隔次数等

vmidVM的进程号,即当前运行的java进程号

interval间隔时间,单位为秒或者毫秒

count打印次数,如果缺省则打印无数次

3)、jstat命令输出参数说明

S0—Heap上的Survivorspace0区已使用空间的百分比

S0CS0当前容量的大小

S0US0已经使用的大小

S1—Heap上的Survivorspace1区已使用空间的百分比

S1CS1当前容量的大小

S1US1已经使用的大小

E—Heap上的Edenspace区已使用空间的百分比

ECEdenspace当前容量的大小

EUEdenspace已经使用的大小

O—Heap上的Oldspace区已使用空间的百分比

OCOldspace当前容量的大小

OUOldspace已经使用的大小

P—Permspace区已使用空间的百分比

OCPermspace当前容量的大小

OUPermspace已经使用的大小

YGC—从应用程序启动到采样时发生YoungGC的次数

YGCT–从应用程序启动到采样时YoungGC所用的时间(单位秒)

FGC—从应用程序启动到采样时发生FullGC的次数

FGCT–从应用程序启动到采样时FullGC所用的时间(单位秒)

GCT—从应用程序启动到采样时用于垃圾回收的总时间(单位秒),它的值等于YGC+FGC

4、使用示例

示例1)、

示例2

图中同时打印了younggcfullgc的总次数、总耗时。而,每次younggc消耗的时间,可以用相间隔的两行YGCT相减得到。每次fullgc消耗的时间,可以用相隔的两行FGCT相减得到。例如红框中表示的第一行、第二行之间发生了1younggc,消耗的时间为0.252-0.2520.0秒。

常驻内存区(P)的使用率,始终停留在64.21%左右,说明常驻内存没有突变,比较正常。如果younggcfullgc能够正常发生,而且都能有效回收内存,常驻内存区变化不明显,则说明java内存释放情况正常,垃圾回收及时,java内存泄露的几率就会大大降低。但也不能说明一定没有内存泄露。

示例3)、

以上,介绍了Jstat按百分比查看gc情况的功能。其实,它还有功能,例如加载类信息统计功能、内存池信息统计功能等,那些是以绝对值的形式打印出来的,比较少用,在此就不做介绍。

示例4)、jstat-classpid:显示加载class的数量,及所占空间等信息。

示例5)、jstat-compilerpid:显示VM实时编译的数量等信息。

示例就不一一例举,有兴趣的可以自己尝试尝试。

<!--EndFragment-->
分享到:
评论

相关推荐

    JVM监控管理及故障诊断工具(常用命令)

    2. jstat - Java Virtual Machine Statistics Monitoring Tool jstat 命令用于输出给定 Java 进程的统计信息。在只有控制台的环境中(比如生产环境),该命令十分奏效。我们主要通过它可以显示系统中垃圾回收、类...

    JDK自带调试工具doc

    以上工具的使用通常需要与相应的帮助文档配合,如`java.chm`可能包含了JDK的综合帮助文档,而`jstat - Java Virtual Machine Statistics Monitoring Tool.htm`、`jps - Java Virtual Machine Process Status Tool....

    Tomcat教程-JVM相关工具.docx

    3. **jstat (Java Virtual Machine Statistics Monitoring Tool)**: jstat用于实时监控JVM的资源和性能,如垃圾收集、类加载、编译器等统计信息。它有多个子选项,例如`-gc`、`-gccapacity`、`-gccause`等,用于...

    jvm工具、参数调优&调试技巧.doc

    2. **jstat(Java Virtual Machine Statistics Monitoring tool)**:提供对JVM各种运行时统计数据的实时监控,包括垃圾收集器状态、类装载情况、JVM内存使用等,帮助开发者评估JVM性能。 3. **jinfo...

    虚拟机监控工具详请.rar

    2. **jstat(Java Virtual Machine Statistics Monitoring Tool)**: jstat是用于收集JVM的各种统计信息的工具,包括垃圾收集器、编译器和内存使用情况等。它可以提供实时的、详细的性能数据,帮助开发者分析内存...

    jstat-1压缩包1111

    jstat,全称Java Virtual Machine Statistics Monitoring Tool,是Java虚拟机自带的一个性能监控工具。它能够实时地监控Java虚拟机的各种运行状态,包括垃圾收集、类装载、内存使用、JVM编译等关键指标,是Java...

    使用java自带工具监控jvm运行状态

    5. **jstat(Java Virtual Machine Statistics Monitoring Tool)** `jstat`是一个强大的命令行工具,它可以收集JVM的各种统计信息,包括垃圾收集、类装载、编译等。例如,`jstat -gcutil &lt;pid&gt; &lt;interval&gt; &lt;count&gt;...

    Java线上故障排查方案.pdf

    - jps(Java Virtual Machine Process Status Tool)用于列出当前运行的Java进程。 - jmap(Java Memory Map)用于生成堆转储快照,用于分析堆的使用情况。 - jstack(Java Stack Trace)用于生成线程堆栈信息,用于...

    JVM内存模型和性能调优:JVM调优工具详解及调优实战:jstat – 第38篇

    在众多的JVM调优工具中,`jstat`(Java Virtual Machine Statistics Monitoring Tool)是一个非常实用的命令行工具,尤其适用于实时监控和分析JVM的状态。 一、`jstat` 命令详解 `jstat`命令允许开发者查看JVM的...

    基于JVM性能监控命令介绍

    jstat(JVM Statistics Monitoring Tool)命令用于手机HotSpot虚拟机各方面的运行数据,包括类装载、内存使用、垃圾收集、JIT编译等信息。jstat命令的基本语法如下: jstat [options] [vmid] 其中,options是可选...

Global site tag (gtag.js) - Google Analytics