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. Jquery判断某个标签 Id是否存在

    query判断某个标签 Id是否存在, 如果是下面的 jQuery 代码判断一个对象是否存在,是不能用的 if($("#id")){}else{} 因为 $(“#id”) 不管对象 ...

  2. 常用MySQL函数

    MySQL数据库提供了很多函数包括: 数学函数: 字符串函数: 日期和时间函数: 条件判断函数: 系统信息函数: 加密函数: 格式化函数: 一.数学函数 数学函数主要用于处理数字,包括整型.浮点数等. ...

  3. Java自定义注解的定义与使用

    Java注解 Annotation(注解)是JDK5.0及以后版本引入的.它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查.注解是以‘@注解名’在代码中存在的,根据注解参数的个数,我们可 ...

  4. Spring Security OAuth2 token权限隔离

    由于项目OAuth2采用了多种模式,授权码模式为第三方系统接入,密码模式用于用户登录,Client模式用于服务间调用, 所有不同的模式下的token需要用  @PreAuthorize("h ...

  5. 160229-02、Sublime Text 3 快捷键总结

    选择类 Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本. Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑.举个栗子:快速选中并更改所有相同的变量名.函数 ...

  6. 160513、nginx+tomcat集群+session共享(linux)

    第一步:linux中多个tomcat安装和jdk安装(略) 第二步:nginx安装,linux中安装nginx和windows上有点不同也容易出错,需要编译,这里做介绍 一.安装依赖 gcc open ...

  7. Linux中配置主机之间的免密ssh登陆

    假如 A 要登陆 B在A上操作:1.首先生成密钥对 ssh-keygen (提示时,直接回车即可) 2.再将A自己的公钥拷贝并追加到B的授权列表文件authorized_keys中 ssh-copy- ...

  8. mysql 字符集研究

    一.创建一个测试数据库 及一个测试用的表.均使用默认的编码方式. show variables like 'char%': mysql> show variables like 'char%'; ...

  9. c# 下三角实现 九九乘法口诀表

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Hell ...

  10. libtorch 哪些函数比较常用?

    libtorch 加载 pytorch 模块进行预测示例 void mat2tensor(const char * path, torch::Tensor &output) { //读取图片 ...