jps  查看当前java进程

[ ~]# jps
9939 Resin
9874 WatchdogManager
18293 Jps

jstat -gc -t pid 1s

[ ~]# jstat -gc -t 9939 1s
Timestamp S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT
1964991.6 65536.0 65536.0 539.2 0.0 131072.0 15889.4 262144.0 163600.6 125280.0 75271.8 30576 231.889 33 1.581 233.469
1964992.6 65536.0 65536.0 539.2 0.0 131072.0 17543.4 262144.0 163600.6 125280.0 75271.8 30576 231.889 33 1.581 233.469
1964993.6 65536.0 65536.0 539.2 0.0 131072.0 17551.5 262144.0 163600.6 125280.0 75271.8 30576 231.889 33 1.581 233.469

  S0C:Survivor space 0区容量(单位字节) 65536*8/1024 = 512k

  S1C:Survivor space 1区容量

  S0U:Survivor space 0区容量

  S1U:Survivor space 1区已使用

  EC:Eden space区容量

  EU:Eden space区已使用

  OC:Old代容量

  OU:Old代已使用

  PC:持久代容量

  PU:持久代已使用

jstat -gccause pid 2000

[ ~]# jstat -gccause 9939 2000
S0 S1 E O P YGC YGCT FGC FGCT GCT LGCC GCC
0.00 2.09 23.61 62.50 60.08 30591 231.990 33 1.581 233.570 Allocation Failure No GC
0.00 2.09 24.77 62.50 60.08 30591 231.990 33 1.581 233.570 Allocation Failure No GC
0.00 2.09 26.00 62.50 60.08 30591 231.990 33 1.581 233.570 Allocation Failure No GC

  S0:Heap上的Survivor space 0区已使用空间百分比

  S1:Heap上的Survivor space 1区已使用空间百分比

  E:Heap上的Eden space区已使用空间的百分比

  O:Heap上的Old space区已使用空间的百分比

  P:Perm space区已使用空间的百分比

  YGC,YGCT,FGC,FGCT,GCT 分别表示从应用程序启动到采样young gc次数,young gc时间,full gc次数,full gc时间,gc总时间,单位秒。

jstat -gcutil pid  GC统计信息(内存使用率)

[ ~]# jstat -gcutil 9939 2000
S0 S1 E O P YGC YGCT FGC FGCT GCT
1.88 0.00 40.43 62.83 60.08 30748 233.076 33 1.581 234.656
1.88 0.00 78.87 62.83 60.08 30748 233.076 33 1.581 234.656
0.00 1.13 2.61 62.83 60.08 233.082 33 1.581 234.663
0.00 1.13 31.00 62.83 60.08 30749 233.082 33 1.581 234.663
0.00 1.13 63.96 62.83 60.08 30749 233.082 33 1.581 234.663
0.00 1.13 99.56 62.83 60.08 30749 233.082 33 1.581 234.663
1.09 0.00 0.90 62.83 60.08 233.089 33 1.581 234.669
1.09 0.00 3.43 62.83 60.08 30750 233.089 33 1.581 234.669

  从上图可看出两次YGC的过程。Eden Space满了,百分比。

jstat -gcnew pid

[ ~]# jstat -gcnew 9939 3000
S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT
65536.0 65536.0 0.0 1176.4 15 15 32768.0 131072.0 76749.9 30755 233.128
65536.0 65536.0 0.0 1176.4 15 15 32768.0 131072.0 118414.8 30755 233.128
65536.0 65536.0 475.8 0.0 15 15 32768.0 131072.0 12474.0 233.1
65536.0 65536.0 475.8 0.0 15 15 32768.0 131072.0 119806.2 30756 233.132
65536.0 65536.0 475.8 0.0 15 15 32768.0 131072.0 128737.3 30756 233.132
65536.0 65536.0 0.0 2581.2 15 15 32768.0 131072.0 3715.6 233.1
65536.0 65536.0 0.0 2581.2 15 15 32768.0 131072.0 7210.5 30757 233.139

  从上图可看出两次YGC过程,Eden space满了,容量。

  TT:持有次数

  MTT:最大持有次数

  DSS:当前需要Survivor space容量。(Eden space已满)

jstat -gccapacity pid

[ ~]# jstat -gccapacity 9939 3000
NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC PGCMN PGCMX PGC PC YGC FGC
262144.0 262144.0 262144.0 65536.0 65536.0 131072.0 262144.0 262144.0 262144.0 262144.0 21248.0 131072.0 125280.0 125280.0 30767 33

  NGCMN:年轻代初始化大小,最小。262144*8/1024/1024 = 2G

  NGCMX:年轻代最大容量。

  NGC:年轻代当前容量。

  OGCMN:老年代初始化大小,最小。

  OGCMX:老年代最大容量。

  PGCMN:持久代初始化大小。

  PGCMX:持久代最大容量。

  PGC:持久代新生成容量。

jstat -gcold pid

[ ~]# jstat -gcold 9939
PC PU OC OU YGC FGC FGCT GCT
125280.0 75271.8 262144.0 164999.9 30813 33 1.581 235.115

jstat -gcoldcapacity pid

[ ~]# jstat -gcoldcapacity 9939
OGCMN OGCMX OGC OC YGC FGC FGCT GCT
262144.0 262144.0 262144.0 262144.0 30814 33 1.581 235.123

jstat -gcpermcapacity pid

jstat -class pid  显示加载class数量及所占空间

[ ~]# jstat -class 9939
Loaded Bytes Unloaded Bytes Time
13196 25537.4 293 426.1 7.10

jstat -compiler pid  显示VM实时编译的数量等信息

[ ~]# jstat -compiler 9939
Compiled Failed Invalid Time FailedType FailedMethod
4144 0 0 47.15 0

jstat -printcompilation pid  显示VM执行的信息

[ ~]# jstat -printcompilation 9939
Compiled Size Type Method
4144 83 1 java/lang/ThreadLocal$ThreadLocalMap getEntryAfterMiss

  

  

  

  

Java-性能调优工具-jstat的更多相关文章

  1. 第六章 Java性能调优工具(待续)

    Java性能调优工具 Windows工具 JDK命令行工具 JConsole工具 Visual VM多合一工具 Visual VM对QQL的支持 MAT内存分析工具 MAT对QQL的支持 JProfi ...

  2. java性能调优工具

    windows调优工具: 任务管理器(ctrl+alt+delete或).资源管理器(任务管理器->性能进入或运行resmon.exe):JVM分析工具Jconsole,jProfile,Vis ...

  3. 《Java性能权威指南》笔记----Java性能调优工具

    OS 1.CPU 用户态时间(us):cpu执行应用代码所占时间的百分比. 内核态时间(sy):cpu执行内核代码所占时间的百分比,系统态时间与应用相关. 空闲时间(id):cpu空闲时间百分比.空闲 ...

  4. Java性能调优工具(Linux)

    为了能准确获得程序的性能信息,需要使用各种辅助工具.以下主要介绍了Linux上关于Java的系统性能分析工具,掌握这些工具,对于性能瓶颈定位.系统故障排查都有帮助. 1.top命令 [root@loc ...

  5. Java 性能调优工具

    CPU使用率工具: vmstat 检查应用性能时,应该首先审查CPU时间.代码优化的目的是提升而不是降低(更短时间段内的)CPU的使用率.在试图深入优化应用前,应该先弄清楚为何CPU使用率低.磁盘使用 ...

  6. JVM性能调优监控工具专题一:JVM自带性能调优工具(jps,jstack,jmap,jhat,jstat,hprof)

    性能分析工具jstatjmapjhatjstack 前提概要:         JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps.jsta ...

  7. 【Java/Android性能优2】Android性能调优工具TraceView介绍

    本文参考:http://www.trinea.cn/android/android-traceview/ Android自带的TraceView堪比java的性能调优工具visualvm线程视图,可以 ...

  8. Java性能调优实践

    1 导论 JVM主要有两类调优标志:布尔标志和附带参数标志 布尔标志:-XX:+FlagName表示开启,­-XX:-FlagName表示关闭. 附带参数标志:-XX:FlagName=somethi ...

  9. JVM性能调优(4) —— 性能调优工具

    前序文章: JVM性能调优(1) -- JVM内存模型和类加载运行机制 JVM性能调优(2) -- 垃圾回收器和回收策略 JVM性能调优(3) -- 内存分配和垃圾回收调优 一.JDK工具 先来看看有 ...

  10. Java性能调优笔记

    Java性能调优笔记 调优步骤:衡量系统现状.设定调优目标.寻找性能瓶颈.性能调优.衡量是否到达目标(如果未到达目标,需重新寻找性能瓶颈).性能调优结束. 寻找性能瓶颈 性能瓶颈的表象:资源消耗过多. ...

随机推荐

  1. 解决<pre>标签里的文本换行(兼容IE, FF和Opera等)

      我们都知道<pre> 标签可定义预格式化的文本,一个常见应用就是用来表示计算机的源代码.被包围在 pre 元素中的文本通常会保留空格和换行符,但不幸的是,当你在<pre>标 ...

  2. jQuery UI dialog 参数说明

    前段时间碰到个问题 jquery UI dialog弹出层 弹出多个层是 比如弹出两个层A和B  B层如果显示的数据表格太大,伸到了A层的外面,那伸到A层之外的部分就看不到了,因为B层是在A层上弹出的 ...

  3. Python3中json的encode和decode

    在Python3中,将对象序列化为JSON对象,即对对象进行json encode编码,使用函数 json.dumps(obj, *, skipkeys=False, ensure_ascii=Tru ...

  4. px、dp、sp、mm、in、pt这些单位有什么区别?

    相信每个Android新手都会遇到这个问题,希望这篇帖子能让你不再纠结. px: 即像素,1px代表屏幕上一个物理的像素点: px单位不被建议使用,因为同样100px的图片,在不同手机上显示的实际大小 ...

  5. BBS项目部署

    1.准备 项目架构为:LNM+Python+Django+uwsgi+Redis   (L:linux,N:nginx,M:mysql) 将bbs项目压缩上传到:  /opt 在shell中直接拖拽 ...

  6. python包管理一防丢失

    pip3 freeze >list.txt      导出当前环境安装的所有包(list是当前项目录下的文件,可以自己命名)pip3 install -r list.txt     安装文件中所 ...

  7. Linux内核调试技术——jprobe使用与实现

    前一篇博文介绍了kprobes的原理与kprobe的使用与实现方式,本文介绍kprobes中的另外一种探測技术jprobe.它基于kprobe实现,不能在函数的任何位置插入探測点,仅仅能在函数的入口处 ...

  8. Java-工程中常用的程序片段

    1.字符串-整型相互转换 String s = String.valueOf(2); int a = Integer.parseInt(s); 2.向文件末尾添加内容 BufferedWriter b ...

  9. 001-window下运行linux

    一.概述 前提:有条件的情况下,自行安装 在windows上模拟linux环境,主要有三种方法: 1.VMware等虚拟机,缺点:占用系统资源多,运行速度慢. 2.Cygwin等模拟环境,用windo ...

  10. Hadoop2.7.3 HA高可靠性集群搭建

    1.背景介绍 Hadoop2.0.0之前,在一个HDFS集群中,NameNode存在单节点故障(SPOF):因为集群中只有一个NameNode,所以在使用过程中,如果该NameNode出现故障或数据丢 ...