`
wenjinglian
  • 浏览: 822345 次
  • 性别: Icon_minigender_1
  • 来自: 株洲->深圳
社区版块
存档分类
最新评论

jstat使用

阅读更多
注:
用以判断JVM是否存在内存问题呢?如何判断JVM垃圾回收是否正常?一般的top指令基本上满足不了这样的需求,因为它主要监控的是总体的系统资源,很难定位到java应用程序。

Jstat是JDK自带的一个轻量级小工具。全称“Java Virtual Machine statistics monitoring tool”,它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。可见,Jstat是轻量级的、专门针对JVM的工具,非常适用。由于JVM内存设置较大,图中百分比变化不太明显

一个极强的监视VM内存工具。可以用来监视VM内存内的各种堆和非堆的大小及其内存使用量。

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

 

1. jstat -gc pid

可以显示gc的信息,查看gc的次数,及时间。

其中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc的总时间。

2.jstat -gccapacity pid
            可以显示,VM内存中三代(young,old,perm)对象的使用和占用大小,

            如:PGCMN显示的是最小perm的内存使用量,PGCMX显示的是perm的内存最大使用量,

            PGC是当前新生成的perm内存占用量,PC是但前perm内存占用量。

            其他的可以根据这个类推, OC是old内纯的占用量。

3.jstat -gcutil pid

            统计gc信息统计。

4.jstat -gcnew pid

           年轻代对象的信息。

5.jstat -gcnewcapacity pid

           年轻代对象的信息及其占用量。

6.jstat -gcold pid

          old代对象的信息。

7.stat -gcoldcapacity pid

          old代对象的信息及其占用量。

8.jstat -gcpermcapacity pid

          perm对象的信息及其占用量。

9.jstat -class pid

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

          显示VM实时编译的数量等信息。

11.stat -printcompilation pid

          当前VM执行的信息。

        一些术语的中文解释:

         S0C:年轻代中第一个survivor(幸存区)的容量 (字节)
         S1C:年轻代中第二个survivor(幸存区)的容量 (字节)
         S0U:年轻代中第一个survivor(幸存区)目前已使用空间 (字节)
         S1U:年轻代中第二个survivor(幸存区)目前已使用空间 (字节)
           EC:年轻代中Eden(伊甸园)的容量 (字节)
           EU:年轻代中Eden(伊甸园)目前已使用空间 (字节)
           OC:Old代的容量 (字节)
           OU:Old代目前已使用空间 (字节)
           PC:Perm(持久代)的容量 (字节)
           PU:Perm(持久代)目前已使用空间 (字节)
         YGC:从应用程序启动到采样时年轻代中gc次数
       YGCT:从应用程序启动到采样时年轻代中gc所用时间(s)
         FGC:从应用程序启动到采样时old代(全gc)gc次数
       FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)
         GCT:从应用程序启动到采样时gc用的总时间(s)

    NGCMN:年轻代(young)中初始化(最小)的大小 (字节)

    NGCMX:年轻代(young)的最大容量 (字节)

        NGC:年轻代(young)中当前的容量 (字节)

   OGCMN:old代中初始化(最小)的大小 (字节)

   OGCMX:old代的最大容量 (字节)

       OGC:old代当前新生成的容量 (字节)

   PGCMN:perm代中初始化(最小)的大小 (字节)

   PGCMX:perm代的最大容量 (字节)  

       PGC:perm代当前新生成的容量 (字节)

          S0:年轻代中第一个survivor(幸存区)已使用的占当前容量百分比

         S1:年轻代中第二个survivor(幸存区)已使用的占当前容量百分比

           E:年轻代中Eden(伊甸园)已使用的占当前容量百分比

           O:old代已使用的占当前容量百分比

           P:perm代已使用的占当前容量百分比

  S0CMX:年轻代中第一个survivor(幸存区)的最大容量 (字节)

 S1CMX :年轻代中第二个survivor(幸存区)的最大容量 (字节)

    ECMX:年轻代中Eden(伊甸园)的最大容量 (字节)

       DSS:当前需要survivor(幸存区)的容量 (字节)(Eden区已满)

          TT: 持有次数限制

       MTT : 最大持有次数限制

 

 

使用: 
linux 先查找到java进程的pid
ps -ef | grep java
例:pid : 10000
jstat -gcpermcapacity 10000 1000
 

 

转:

http://www.2cto.com/kf/201109/105988.html

http://xueliang880107.iteye.com/blog/954073

 

 

分享到:
评论

相关推荐

    JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解.docx

    JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解 本文将对一些常用的 JVM 性能调优监控工具进行介绍,包括 jps、jstack、jmap、jhat、jstat 等工具的使用详解。这些工具对于 Java 程序员来说是必备的,...

    java诊断与调优常用命令jmap、jstack、jstat使用实战.pdf

    使用`jstat -gcuitl pid [interval] [count]` 可以看到内存使用率的百分比,帮助监控内存分配和回收效率。 掌握这些命令行工具的使用,能极大地提高对Java应用程序的诊断和优化能力。它们提供了深入洞察应用程序...

    jStat中文参考手册

    jStat是一个强大的JavaScript统计学库,它提供了丰富的统计计算功能,使得用户无需掌握专门的统计软件如MATLAB或R就能在Web应用中进行高级统计分析。jStat的核心特性包括静态方法和实例方法,这两种方法在处理数据时...

    jmap、jstack、jstat组合使用定位jvm问题.txt

    jmap、jstack、jstat组合使用定位jvm问题

    JVM内存—jstat分析

    本文将深入探讨`jstat`的使用方法及其提供的多种选项,帮助读者更好地理解如何利用`jstat`进行JVM内存管理。 #### 二、jstat简介 `jstat`是一种用于监控和故障排查基于HotSpot的JVM的应用程序。它能够提供关于JVM...

    java jstat 查看哪个进程频繁GC垃圾回收

    下面我们将详细探讨如何使用`jstat`工具以及通过配置GC日志来分析和优化Java进程。 `jstat`是Java虚拟机内置的一个命令行工具,用于实时监控JVM的各种运行状态,包括垃圾回收的信息。要查看哪个进程频繁进行GC,...

    jstat官方介绍

    由于jstat工具不受Oracle官方的支持,并且可能在未来版本的JDK中无法使用,因此在使用时需要注意其潜在的局限性。 jstat通过命令行执行,其基本语法是: ``` jstat [generalOption] [outputOptions] <vmid> ...

    jstat命令手册.pdf

    以下是jstat命令可使用的统计选项及其意义: 1. **gccause:** 显示有关垃圾回收(GC)统计信息的摘要,以及最后一个和当前GC事件的原因。这包括GC事件最后一次发生的原因以及当前正在发生的GC事件的原因。 2. **...

    jstat js正态分布函数库

    使用`jstat`库的开发者可以通过以下方式操作正态分布: - 初始化一个正态分布对象,例如 `var dist = new NormalDistribution(mean, stdDev)`,其中 `mean` 是均值,`stdDev` 是标准差。 - 使用对象的方法,如 `dist...

    jmap jstat等命令介绍

    `jmap`、`jstat`等命令是Java开发和运维人员的必备工具,它们提供了对JVM(Java虚拟机)内部状态的深入洞察,帮助我们了解内存使用、垃圾收集、线程状态等情况。下面将详细介绍这些命令及其在监控Tomcat内存使用情况...

    jstat:JavaScript统计库

    相反,在执行npm install或类似操作时,请使用全部小写的jstat 。 在浏览器中使用jStat jStat可以在浏览器中使用。 jStat对象将添加到窗口中。 例如: [removed][removed] <!-- include jStat, from the CDN ...

    jstat-1压缩包1111

    总之,jstat是Java开发者和运维人员诊断和优化JVM性能的有力工具,掌握其使用方法对于提升Java应用的性能至关重要。通过持续监控和分析,我们可以更好地理解应用的运行状况,及时发现并解决问题,从而确保系统的稳定...

    前端项目-jstat.zip

    3. **docs**:文档资料,可能包括API参考、教程或者示例,帮助开发者理解和使用jstat库。 4. **examples**:示例代码,展示如何在实际项目中应用jstat的功能。 5. **test**:测试用例,确保库的各个函数按预期工作,...

    jstat-examples:jstat库的用法示例

    jstat-示例 使用示例 实例图 机器学习 :线性回归 :非线性回归 :使用香草KNN算法进行分类 :具有多个线程的KNN分类 :使用KMeans进行聚类 :后勤分类 :使用正则化LassoRegularizer和RidgeRegularizer线性...

    jStat-开源

    对于开源项目,这可能是GPL、MIT、Apache等常见许可证,规定了软件可以如何被使用、修改和分发。 - **jStat**:这个文件可能包含项目的主程序代码或库文件。由于没有具体的扩展名,它可能是压缩包内的目录,包含了...

    jstat.xlsx

    jstat.xlsx

    angular-jstat:jStat统计库的角度包装

    为了更好地使用Angular-JStat,你需要熟悉AngularJS的依赖注入系统,理解如何在AngularJS的模块、控制器和服务中使用服务。同时,对jStat的统计方法有深入的理解,才能充分发挥这个库的能力。如果你遇到问题,可以...

    使用python来简单实现jdk几个指令.zip

    这个压缩包文件"使用python来简单实现jdk几个指令.zip"提供了一种使用Python来实现Java JDK中几个基础命令的方法,例如`jps`和`jstat`。下面将详细解释这些知识点。 1. **Java Development Kit (JDK)**: JDK是Java...

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

    在本例中,使用的JDK版本为JDK 8,使用`jstat -gc pid`命令可以获取关于垃圾收集的详细信息,包括年轻代、老年代的内存使用情况,以及垃圾收集的时间和频率等。 二、垃圾回收统计 垃圾回收(Garbage Collection, ...

    JVM监控工具介绍jstack, jconsole, jinfo, jmap, jdb, jstat.doc

    `jstat` 是一个基于命令行的监控工具,用于实时监控Java应用的资源使用和性能指标,特别关注Heap大小和垃圾回收的状态。它利用了JVM内部机制,无需额外依赖即可提供详尽的性能数据。 #### 其他工具简述 - **jps**...

Global site tag (gtag.js) - Google Analytics