JVM调优命令-jstat
命令格式
|
1
|
jstat [options] VMID [interval] [count] |
VMID : 本地虚拟机进程ID,即当前运行的java进程号
[interval] : 连续输出的时间间隔,单位为秒或者毫秒
[count] : 连续输出的次数,如果缺省打印无数次
| Option | Displays |
|---|---|
| class | 类加载的行为统计。Statistics on the behavior of the class loader. |
| compiler | HotSpt JIT编译器行为统计。Statistics of the behavior of the HotSpot Just-in-Time compiler. |
| gc | 垃圾回收堆的行为统计。Statistics of the behavior of the garbage collected heap. |
| gccapacity | 各个垃圾回收代容量(young,old,perm)和他们相应的空间统计。Statistics of the capacities of the generations and their corresponding spaces. |
| gcutil | 垃圾回收统计概述(百分比)。Summary of garbage collection statistics. |
| gccause | 垃圾收集统计概述(同-gcutil),附加最近两次垃圾回收事件的原因。Summary of garbage collection statistics (same as -gcutil), with the cause of the last and |
| gcnew | 新生代行为统计。Statistics of the behavior of the new generation. |
| gcnewcapacity | 新生代与其相应的内存空间的统计。Statistics of the sizes of the new generations and its corresponding spaces. |
| gcold | 年老代和永生代行为统计。Statistics of the behavior of the old and permanent generations. |
| gcoldcapacity | 年老代行为统计。Statistics of the sizes of the old generation. |
| gcpermcapacity | 永生代行为统计。Statistics of the sizes of the permanent generation. |
| printcompilation | HotSpot编译方法统计。HotSpot compilation method statistics. |
-class (监视类装载、卸载数量、总空间以及耗费的时间)
|
1
2
3
4
|
[root@localhost bin]# jstat -class 4513Loaded Bytes Unloaded Bytes Time 8455 17240.8 0 0.0 15.47 |
Bytes : class字节大小
Unloaded : 未加载class的数量
Bytes : 未加载class的字节大小
Time : 加载时间
-compiler(输出JIT编译过的方法数量耗时等)
|
1
2
3
|
[root@localhost bin]# jstat -compiler 4513Compiled Failed Invalid Time FailedType FailedMethod 1255 0 0 16.47 0 |
Failed : 编译失败数量
Invalid : 无效数量
Time : 编译耗时
FailedType : 失败类型
FailedMethod : 失败方法的全限定名
-gc(垃圾回收堆的行为统计,常用命令)
|
1
2
3
|
[root@localhost bin]# jstat -gc 4513 S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT 52224.0 53248.0 19364.2 0.0 804864.0 74967.7 168448.0 80595.4 52736.0 52628.1 10 0.232 0 0.000 0.232 |
S1C : survivor1区的总容量
S0U : survivor0区已使用的容量
S1C : survivor1区已使用的容量
EC : Eden区的总容量
EU : Eden区已使用的容量
OC : Old区的总容量
OU : Old区已使用的容量
PC : 当前perm的容量 (KB)
PU : perm的使用 (KB)
YGC : 新生代垃圾回收次数
YGCT : 新生代垃圾回收时间
FGC : 老年代垃圾回收次数
FGCT : 老年代垃圾回收时间
GCT : 垃圾回收总消耗时间
|
1
|
[root@localhost bin]# jstat -gc 4513 2000 2 |
-gccapacity(同-gc,还会输出Java堆各区域使用到的最大、最小空间)
|
1
2
3
|
[root@localhost bin]# jstat -gccapacity 4513 NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC PGCMN PGCMX PGC PC YGC FGC 84480.0 1349632.0 913408.0 54272.0 51200.0 502784.0 168448.0 2699264.0 168448.0 168448.0 21504.0 83968.0 51712.0 51712.0 9 0 |
NGCMX : 新生代占用的最大空间
OGCMN : 老年代占用的最小空间
OGCMX : 老年代占用的最大空间
OGC:当前年老代的容量 (KB)
OC:当前年老代的空间 (KB)
PGCMN : perm占用的最小空间
PGCMX : perm占用的最大空间
-gcutil(同-gc,输出的是已使用空间占总空间的百分比)
|
1
2
3
|
[root@localhost bin]# jstat -gcutil 4513 S0 S1 E O P YGC YGCT FGC FGCT GCT 0.00 79.23 38.90 39.92 99.74 9 0.198 0 0.000 0.198 |
-gccause(垃圾收集统计概述(同-gcutil),附加最近两次垃圾回收事件的原因)
|
1
2
3
|
[root@localhost bin]# jstat -gccause 4513 S0 S1 E O P YGC YGCT FGC FGCT GCT LGCC GCC 0.00 79.23 39.37 39.92 99.74 9 0.198 0 0.000 0.198 Allocation Failure No GC |
GCC:当前垃圾回收的原因
-gcnew(统计新生代行为)
|
1
2
3
|
[root@localhost bin]# jstat -gcnew 4513 S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT 54272.0 51200.0 0.0 40565.8 2 15 54272.0 502784.0 197950.5 9 0.198 |
MTT:最大的tenuring threshold
DSS:survivor区域大小 (KB)
-gcnewcapacity(新生代与其相应的内存空间的统计)
|
1
2
3
|
[root@localhost bin]# jstat -gcnewcapacity 4513 NGCMN NGCMX NGC S0CMX S0C S1CMX S1C ECMX EC YGC FGC 84480.0 1349632.0 913408.0 449536.0 54272.0 449536.0 51200.0 1348608.0 502784.0 9 0 |
S0CMX:最大的S0空间 (KB)
S0C:当前S0空间 (KB)
ECMX:最大eden空间 (KB)
EC:当前eden空间 (KB)
-gcold(统计老年代行为)
|
1
2
3
|
[root@localhost bin]# jstat -gcold 4513 PC PU OC OU YGC FGC FGCT GCT 51712.0 51575.1 168448.0 67239.6 9 0 0.000 0.198 |
-gcoldcapacity(老年代与其相应的内存空间的统计)
|
1
2
3
|
[root@localhost bin]# jstat -gcoldcapacity 4513 OGCMN OGCMX OGC OC YGC FGC FGCT GCT 168448.0 2699264.0 168448.0 168448.0 9 0 0.000 0.198 |
-gcpermcapacity(永久代与其相应内存空间的统计)
|
1
2
3
|
[root@localhost bin]# jstat -gcpermcapacity 4513 PGCMN PGCMX PGC PC YGC FGC FGCT GCT 21504.0 83968.0 51712.0 51712.0 9 0 0.000 0.19 |
-printcompilation(hotspot编译方法统计)
|
1
2
3
|
[root@localhost bin]# jstat -printcompilation 4513Compiled Size Type Method 1261 1261 1 java/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue take |
Size:方法字节码的字节数
Type:编译类型
Method:编译方法的类名和方法名。类名使用"/" 代替 "." 作为空间分隔符. 方法名是给出类的方法名. 格式是一致于HotSpot - XX:+PrintComplation 选项
JVM调优命令-jstat的更多相关文章
- JVM调优总结 + jstat 分析(转)
[转] JVM调优总结 + jstat 分析 JVM调优总结 + jstat 分析 jstat -gccause pid 1 每格1毫秒输出结果jstat -gccause pid 2000 每格2秒 ...
- jvm系列(四):jvm调优-命令大全(jps jstat jmap jhat jstack jinfo)
文章同步发布于github博客地址,阅读效果更佳,欢迎品尝 运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎 ...
- [转]jvm调优-命令大全(jps jstat jmap jhat jstack jinfo)
运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎鼎的VisualVM,IBM的Memory Analyzer ...
- JVM调优 — 命令大全(jps jstat jmap jhat jstack jinfo)(转)
运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎鼎的VisualVM,IBM的Memory Analyzer ...
- jvm调优-命令大全(jps jstat jmap jhat jstack jinfo)
现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 内存泄露 线程死锁 锁争用(Lock Contention) Java进程消耗CPU过高 运用jv ...
- Java虚拟机(五):JVM调优命令
运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎鼎的VisualVM,IBM的Memory Analyzer ...
- jvm系列(四):jvm调优-命令篇
运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎鼎的VisualVM,IBM的Memory Analyzer ...
- JVM调优总结 + jstat 分析
jstat -gccause pid 1 每格1毫秒输出结果jstat -gccause pid 2000 每格2秒输出结果不断的在屏幕打印出结果 S0 S1 E O ...
- 类加载机制与JVM调优命令
一.类加载过程 类加载:类加载器将.class字节码文件加载进Java虚拟机的内存中. 加载:在硬盘上查找并通过IO读入字节码文件 连接:执行校验.准备.解析(可选)步骤 校验:校验字节码文件的正确性 ...
随机推荐
- 11、Dockerfile实战-Tomcat
一.编写Dockerfile 具体步骤这里不再细说,直接看Dockerfile文件: FROM centos:7 MAINTAINER QUNXUE ENV VERSION=8.0.46 RUN yu ...
- Java设计模式之适配器设计模式(项目升级案例)
今天是我学习到Java设计模式中的第三个设计模式了,但是天气又开始变得狂热起来,对于我这个凉爽惯了的青藏人来说,又是非常闹心的一件事儿,好了不管怎么样,目标还是目标(争取把23种Java设计模式接触一 ...
- 记录:Ubuntu 18.04 安装 tensorflow-gpu 版本
狠下心来重新装了系统,探索一下 gpu 版本的安装.比较令人可喜的是,跟着前辈们的经验,还是让我给安装成功了.由于我是新装的系统,就像婴儿般纯净,所以进入系统的第一步就是安装 cuda,只要这个不出错 ...
- 一种C#泛型方法在lua中表示的设计
在进行lua方法注册的时候, 大多数解决方案直接否定了泛型方法, 因为在lua侧难以表达出泛型, 以及lua的函数重载问题, 函数重载问题可以通过一些特殊方法解决, 而泛型问题是主要问题, 以Unit ...
- docker 安装 kali
1.安装 docker pull kalilinux/kali-linux-docker 2.运行容器 docker run -t -i kalilinux/kali-linux-docker /bi ...
- [T-ARA][Tic Tic Toc]
歌词来源:http://music.163.com/#/song?id=22704478 Tic Tic Toc RA Tic Tic Toc RA [Tic Tic Toc RA Tic Tic T ...
- error: Build input file cannot be found: '*******/node_modules/react-native/Libraries/WebSocket/libfishhook.a' 问题解决记录
解决了刚才的'config.h' file not found问题,本以为就可以顺畅的跑起来,谁知道又被恶心到了,Build input file cannot be found!!! 问题: err ...
- Python中元组,列表,字典的区别
http://blog.csdn.net/yasi_xi/article/details/38384047
- navicat连接mysql报10061错
可能原因:mysql服务未启动 解决办法:进入到计算机管理,找到服务,然后找到mysql服务,并启动该服务
- (Alpha)Let's-个人贡献分
Alpha阶段个人贡献分如下: (1201)林珣玙 60 (1190)康家华 55 (1194)刘彦熙 53 (1168)仇栋民 48 (1183)马瑶华 42 (1222)张启东 42