jstat命令用法

来源:互联网 发布:mysql 时间格式化函数 编辑:程序博客网 时间:2024/05/29 07:53

jstat命令用法

(2011-09-21 16:02:27)
转载
标签:

jstat

gc

it

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

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

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

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

执行:cd $JAVA_HOME/bin中执行jstat,注意jstat后一定要跟参数。

 

jstat :对VM内存使用量进行监控。
   jstat工具特别强大,有众多的可选项,详细查看堆内各个部分的使用量,以及加载类的数量。使用时,需加上查看进程的进程id,和所选参数。以下详细介绍各个参数的意义。
    jstat -classpid:显示加载class的数量,及所占空间等信息。
    jstat -compilerpid:显示VM实时编译的数量等信息。
    jstat -gcpid:可以显示gc的信息,查看gc的次数,及时间。其中最后五项,分别是young gc的次数,young gc的时间,fullgc的次数,full gc的时间,gc的总时间。
    jstat-gccapacity:可以显示,VM内存中三代(young,old,perm)对象的使用和占用大小,如:PGCMN显示的是最小perm的内存使用量,PGCMX显示的是perm的内存最大使用量,PGC是当前新生成的perm内存占用量,PC是但前perm内存占用量。其他的可以根据这个类推,OC是old内纯的占用量。
    jstat -gcnewpid:new对象的信息。
    jstat -gcnewcapacitypid:new对象的信息及其占用量。
    jstat -gcoldpid:old对象的信息。
    jstat -gcoldcapacitypid:old对象的信息及其占用量。
    jstat -gcpermcapacitypid: perm对象的信息及其占用量。
    jstat -utilpid:统计gc信息统计。
    jstat -printcompilationpid:当前VM执行的信息。
    除了以上一个参数外,还可以同时加上两个数字,如:jstat -printcompilation 3024 2506是每250毫秒打印一次,一共打印6次,还可以加上-h3每三行显示一下标题。
0 0