`

《深入理解java虚拟机》第四章 虚拟机性能监控与故障处理工具

 
阅读更多

第四章  虚拟机性能监控与故障处理工具

 

 sun jdk 监控和故障处理工具

 jps : jvm process status  tool 显示制定系统内的所有的HotSpot虚拟机进程

 jstat:  jvm statistics monitoring tool 用于收集hotspot虚拟机各方面的运行数据

 jinfo :configuration info for java 显示虚拟机配置信息

 jmap: memory map for java 生成虚拟机的内存转储快照文件

 jhat :jvm heap dump browser ,用于分析heapdump文件,它会建立一个HTTP/html服务器,让用户可以在浏览器上查看分析结果

 jstack:  stack tarce for java  显示虚拟机的线程快照

 

1 jps 显示制定系统内的所有的HotSpot虚拟机进程

 jps [options]  [hostid]

 使用例子 jps -l

 jps -l 输出主类的全名,如果进程执行的是jar包,输出jar路径

 jps -v 输出虚拟机启动时的参数

 jps -m 输出虚拟机重启时,传递给main()函数的参数

 jps -q 只输出LVMID 省略主类的名称

 

 2 jstat  jvm statistics monitoring tool 用于收集hotspot虚拟机各方面的运行数据

  jstat [options vmid [interval [s|ms][count] ]]

  使用例子 jstat -gc  2764  250 20  每250毫秒查询一次进程2764垃圾收集情况,一共查询20次

  

 jstat   工具主要选项

  -class 监视器装载,卸载数量,总空间以及类装载所耗费的时间

  -gc 监视java堆状况,包括eden区,两个survivor区,老年代,永久代等的容量,已用空间,GC时间合计等信息

  -gccapacity 监视内容与gc相同,但是主要关注java堆各个区域使用到的最大,最小空间

  -gcutil   监视内容与gc相同,但是主要关注已使用空间占用总空间的百分比

  -gccause  与gcutil功能一样,但是额外显示导致上一次GC产生的原因

  -gcnew 监视新生代GC情况

  -gcnewcapacity  监视内容与gcnew相同,但是主要关注使用到的最大,最小空间

  -gcold   监视老年代GC情况

  -gcoldcapacity  监视内容与gcold相同,但是主要关注使用到的最大,最小空间

  -gcpermcapacity  输出永久代使用到的最大,最小空间

  -compiler  输出JIT编译器编译过的方法,耗时等信息

  -printcompilation 输出已经被JIT编译的方法

  

  3 jinfo java配置信息工具

  

  jinfo [options]  pid

  举例: jinfo  -flag  CMSInitiatingOccupancyFraction 1444

  -XX:CMSInitiatingOccupancyFraction=85

  

  4 jmap java内存影像工具

  

  jmap [options]  vmid

  

  主要选项

  -dump 生成java堆转储快照,格式为 -dump:[live,] format=b,file=<filename>, 其中live子参数说明只dump出存活的对象

  -finalizerinfo 显示在F-Queue中等待Finalizer线程执行finalizer方法的对象,linux/solaris下有效

  -heap 显示java堆详细信息,如使用哪种回收器,参数配置,分代情况等,linux/solaris下有效

  -histo  显示堆中对象统计信息,包括类,实例数量,合计容量

  -permstat 以ClassLoader为统计口径显示永久代内存状态  linux/solaris下有效

  -F  当虚拟机进程对 -dump选项没有响应时,可使用这个选项强制生成dump快照 linux/solaris下有效

  举例:jps 查询到LVMID 

  jmap -dump:format=b,file=eclipse.bin 3500

  

  5 jhat 虚拟机转储快照分析工具

  举例:jhat eclipse.bin

  http://localhost:7000/访问看分析结果

  

  

  6 jstck java堆栈跟踪工具

  

  jstack [options]  vmid

  

  —F 当正常输出请求不被请求是,强制输出线程堆栈

  -l  除堆栈外,显示关于锁的附加信息

  -m 如果调用到本地方法的话,可以显示C/C++的堆栈

   举例:jstack -l 3500

   

   

   7 jdk的可视化工具

   jConsole:java监视与管理控制台

   VisualVM:多合一故障处理工具

 

分享到:
评论

相关推荐

    实战Java虚拟机——JVM故障诊断与性能优化 pdf

    《实战Java虚拟机——JVM故障诊断与性能优化》内容简介:随着越来越多的第三方语言(Groovy、Scala、JRuby等)在Java虚拟机上运行,Java也俨然成为一个充满活力的生态圈。本书将通过200余示例详细介绍Java虚拟机中的...

    实战Java虚拟机——JVM故障诊断与性能优化

    第6章介绍了Java虚拟机的性能监控和故障诊断工具。第7章详细介绍了对Java堆的分析方法和案例。第8章介绍了Java虚拟机对多线程,尤其是对锁的支持。第9~10章介绍了Java虚拟机的核心——Class文件结构,以及Java虚拟机...

    实战JAVA虚拟机 JVM故障诊断与性能优化

    本书将通过200余示例详细介绍Java虚拟机中的各种参数配置、故障排查、性能监控以及性能优化。  本书共11章。第1~3章介绍了Java虚拟机的定义、总体架构、常用配置参数。第4~5章介绍了垃圾回收的算法和各种垃圾回收器...

    实战JAVA虚拟机++JVM故障诊断与性能优化.pdf

    第6章介绍了Java虚拟机的性能监控和故障诊断工具。第7章详细介绍了对Java堆的分析方法和案例。第8章介绍了Java虚拟机对多线程,尤其是对锁的支持。第9~10章介绍了Java虚拟机的核心——Class文件结构,以及Java虚拟机...

    深入理解Java 虚拟机 原代码

    第11章:虚拟机性能监控与故障处理工具(未列出) 本章介绍了用于分析和调试JVM的工具,如jconsole、jvisualvm等,以及如何通过这些工具监控和诊断JVM的运行状态,定位和解决问题。 第13章:Java内存模型与线程 这...

    实战JAVA虚拟机

    第6章介绍了Java虚拟机的性能监控和故障诊断工具。第7章详细介绍了对Java堆的分析方法和案例。第8章介绍了Java虚拟机对多线程,尤其是对锁的支持。第9~10章介绍了Java虚拟机的核心——Class文件结构,以及Java虚拟机...

    实战java虚拟机

    第6章介绍了Java虚拟机的性能监控和故障诊断工具。第7章详细介绍了对Java堆的分析方法和案例。第8章介绍了Java虚拟机对多线程,尤其是对锁的支持。第9~10章介绍了Java虚拟机的核心——Class文件结构,以及Java虚拟机...

    深入java虚拟机源码

    《深入Java虚拟机源码》一书主要涵盖了Java虚拟机(JVM)的内部工作原理,...通过对这些章节的学习,读者将能够深入理解Java虚拟机的工作原理,更好地进行性能优化和问题定位,从而提升Java应用程序的稳定性和效率。

    JVM故障诊断与性能优化(实战JAVA虚拟机).7z

    本书将通过200余示例详细介绍Java虚拟机中的各种参数配置、故障排查、性能监控以及性能优化。 本书共11章。第1~3章介绍了Java虚拟机的定义、总体架构、常用配置参数。第4~5章介绍了垃圾回收的算法和各种垃圾回收器。...

    深入JAVA虚拟机第二版

    通过阅读《深入JAVA虚拟机第二版》,你不仅可以提升对Java编程的理解,还能具备解决实际问题的能力,比如性能优化、故障排查等。这本书是每一位Java开发者的案头必备,它能帮助你在Java世界中游刃有余。

    深入Java虚拟机第二版

    《深入Java虚拟机第二版》是一本专门为Java开发者和系统管理员设计的专业书籍,旨在帮助读者深入理解Java虚拟机(JVM)的工作原理及其在实际应用中的优化策略。这本书包含了丰富的示例,使得理论知识能够更好地与...

    深入java虚拟机第二版

    《深入Java虚拟机第二版》是一本专门为Java开发者和优化专家设计的书籍,它详尽地探讨了Java虚拟机(JVM)的工作原理和技术细节。这本书对于提升Java程序的性能、理解和解决运行时问题至关重要。在Java编程领域,对...

    Java虚拟机:JVM高级特性与最佳实践(第2版)

    《Java虚拟机:JVM高级特性与最佳实践(第2版)》这本书深入探讨了Java虚拟机(JVM)的工作机制,旨在帮助开发者们更好地理解Java程序的运行过程,优化性能,并解决潜在的问题。作者周志明是Java领域的资深专家,他...

    深入java虚拟机(第二版)

    《深入Java虚拟机(第二版)》是一本深入解析Java平台核心技术的重要著作,它详细阐述了Java虚拟机(JVM)的工作原理和技术细节。这本书旨在帮助开发者更好地理解Java程序的运行机制,提升性能优化和故障排查的能力...

    高级java笔试题-understanding-the-jvm:《深入理解Java虚拟机》阅读笔记

    将原书中有关虚拟机性能监控及故障处理的部分单抽了出来,组成了本 repo 的第三部分。第四部分对应于原书的第四部分,程序编译与代码优化,不过仅对 Java 的运行期优化,也就是 JIT 时进行的优化进行了总结,编译器...

    Java虚拟机

    第4章 虚拟机性能监控与故障处理工具 4.1 概述 4.2 JDK的命令行工具 4.2.1 jps:虚拟机进程状况工具 4.2.2 jstat:虚拟机统计信息监视工具 4.2.3 jinfo:Java配置信息工具 4.2.4 jmap:Java内存映像工具 ...

Global site tag (gtag.js) - Google Analytics