JDK 自带工具试用(一)
2014-06-30 00:27
288 查看
简述:
运维监控会用到JDK的小工具
参考:
《深入理解 Java 虚拟机》
2012年4月第1版第6次印刷
第四章 虚拟机性能监控与故障处理工具
说明:
1. jps
用来查看当前运行的Java进程
我在eclipse中起了一个web 应用
或者用jps -l 可以查看的更清楚一点
jps -v
看到10376之后用taskkill指令关闭
2. jstat
虚拟机统计信息监视工具
先用jps查看当前启动的应用
于是使用
gcutil 监视Java堆状况,主要关注已使用空间占总空间的百分比,包括Eden区,2个survivor区,老年代、永久代,已用空间、GC时间合计
查询结果表明
在新生代Eden区使用了37.15%的空间
S0, S1 , Survivor0, Survivor1
O : Old
P: Permanent
YGC: Young GC 程序运行以来总共发生16次GC, 共耗时YGCT 13.247秒
FGC: Full GC 2次 , 耗时GCT 1.1.02秒
GC总耗时: 14.349秒
通过命令
从中可以看到
下面是调用system.getProperties() 的命令
jinfo查看参数
试着修改 CMSInitiatingOccupancyFraction
(CMS, 一种以获取最短回收停顿时间为目标的收集器, 关于JVM内存管理 参看官方文档
http://www.oracle.com/technetwork/java/javase/memorymanagement-whitepaper-150215.pdf)
通过jinfo查询得到该参数
附(记录几个常用的参数):
-Xms 初始堆大小 默认物理内存的1/64(<1GB)
-Xmx 最大堆大小
-Xmn 年轻代大小 (Eden和两个Survivor区的合计大小)
-Xss 每个线程的堆栈大小
4. jmap
Java 内存映像工具
输入指令
于是会生成jmap_result.txt文件
需要在eclipse中安装Memory Analyzer插件
http://download.eclipse.org/mat/1.4/update-site/
进入Memory Analysis perspective
而后
File -> Open Heap Dump
选内存泄露模式,于是生成一张 饼状图
(这里是引入,之后具体的检测会有新的文章做阐述)
运行
出现界面,
运维监控会用到JDK的小工具
参考:
《深入理解 Java 虚拟机》
2012年4月第1版第6次印刷
第四章 虚拟机性能监控与故障处理工具
说明:
1. jps
用来查看当前运行的Java进程我在eclipse中起了一个web 应用
或者用jps -l 可以查看的更清楚一点
jps -v
看到10376之后用taskkill指令关闭
2. jstat
虚拟机统计信息监视工具先用jps查看当前启动的应用
于是使用
cd C:\Users\Administrator\Desktop\jvm monitor
gcutil 监视Java堆状况,主要关注已使用空间占总空间的百分比,包括Eden区,2个survivor区,老年代、永久代,已用空间、GC时间合计
jstat -gcutil 8832 >>jstat_result.txt
查询结果表明
在新生代Eden区使用了37.15%的空间
S0, S1 , Survivor0, Survivor1
O : Old
P: Permanent
YGC: Young GC 程序运行以来总共发生16次GC, 共耗时YGCT 13.247秒
FGC: Full GC 2次 , 耗时GCT 1.1.02秒
GC总耗时: 14.349秒
3. jinfo
实时地查看和调整虚拟机各项参数通过命令
java -XX:+PrintFlagsFinal > printFlagsFinal_result.txt获取当前的jvm信息,
从中可以看到
下面是调用system.getProperties() 的命令
jinfo -sysprops 12408 > jinfo_result.txt
jinfo查看参数
试着修改 CMSInitiatingOccupancyFraction
(CMS, 一种以获取最短回收停顿时间为目标的收集器, 关于JVM内存管理 参看官方文档
http://www.oracle.com/technetwork/java/javase/memorymanagement-whitepaper-150215.pdf)
通过jinfo查询得到该参数
附(记录几个常用的参数):
-Xms 初始堆大小 默认物理内存的1/64(<1GB)
-Xmx 最大堆大小
-Xmn 年轻代大小 (Eden和两个Survivor区的合计大小)
-Xss 每个线程的堆栈大小
4. jmap
Java 内存映像工具输入指令
jmap -dump:format=b,file=jmap_result.bin 12408
于是会生成jmap_result.txt文件
需要在eclipse中安装Memory Analyzer插件
http://download.eclipse.org/mat/1.4/update-site/
进入Memory Analysis perspective
而后
File -> Open Heap Dump
选内存泄露模式,于是生成一张 饼状图
(这里是引入,之后具体的检测会有新的文章做阐述)
5. jconsole
进入jdk目录,运行
出现界面,
相关文章推荐
- JDK 自带工具试用(一)
- 用jdk自带工具javap查看class信息(编译版本)
- 使用jdk自带的工具native2ascii 转换Unicode字符和汉字
- JDK自带监控工具
- 用JDK自带的工具生成客户端调用Webservice的代码
- JDK自带工具之JPS
- JDK自带工具keytool生成ssl证书
- 利用jdk自带的运行监控工具JConsole观察分析Java程序的运行 Jtop
- JDK 6 自带vm分析工具
- JDK自带的native2ascii工具完全揭密
- JDK自带工具jps,jstat,jmap,jconsole使用
- JDK自带工具keytool生成ssl证书
- JDK自带监控工具 jps、jinfo、jstat、jmap、jconsole
- jdk自带jstack工具
- 利用jdk自带的强悍工具jvisualvm检测多线程的竞争
- JDK自带的实用工具native2ascii.exe
- JDK自带工具keytool生成ssl证书(转)
- JDK自带工具之jmap
- 使用JDK自带的keytool工具生成证书
- 使用jdk自带的工具监控tomcat服务器