美文网首页
JVM 分析工具

JVM 分析工具

作者: 星冉子 | 来源:发表于2019-09-29 20:26 被阅读0次

jcmd

在JDK1.7以后,新增了一个命令行工具 jcmd。他是一个多功能的工具,可以用它来导出堆、查看Java进程、导出线程信息、执行GC、还可以进行采样分析(jmc 工具的飞行记录器)。

使用参考

jconsole

JConsole图形用户界面是基于JMX规范的监视工具,可以监测有关在Java平台上运行的应用程序的性能和资源消耗的信息。

使用参考

jvisualvm

jvisualvm是 JDK 内置的可视化性能诊断工具,它通过 JMX、jstatd、Attach API 等方式获取目标 JVM 的分析数据,包括 CPU 使用率、内存使用量、线程堆栈信息等。此外,它还能直观地展示 Java 堆中各对象的数量和大小、各 Java 方法的调用次数和执行时间等,可以认为jvisualvm是jconsole的升级版,是一个综合性的分析工具,可以认为其整合了jstack、jmap、jinfo等众多调试工具的功能,并以图形界面展示。

使用参考

jmc

JDK7开始引入了Java 任务控制(JMC)工具,它的根源是 JRockit JVM 工具。该工具套件的目的是提供Java 监控和管理,适合在开发和产品环境中使用。JMC 与 Java Flight Recorder 一起工作,适用于 HotSpot JVM,用来记录核心数据和事件。它是一个调优工具,一旦出现问题,这些数据就可以用来分析。该工具套件由三个主要的组件组成:Java 进程浏览器、JMX 控制台和 Java Flight 记录器。

Java 进程浏览器:允许用户列出并连接到本地和远程运行的Java应用程序。它能够使用 Java发现协议(JDP)自动地发现本地和远程运行的 Java 进程。

JMX 控制台:能够通过 JMX 接口管理并监控 JDK。它提供了实时集合、堆使用情况、CPU 负载以及其他通过 MBeans 暴露的和在 MBean 服务器中注册的信息。

Java Flight 记录器:提供了一种从操作系统层、JVM 和 Java 应用程序层收集事件的方式。收集的事件包括线程延时事件,例如休眠(sleep)、等待(wait)、锁竞争、I/O、GC 和方法分析。Oracle 估计对大多数应用程序而言运行 Flight 记录器的性能开销大约在 2% 左右。

使用前需要开启JVM参数:-XX:+UnlockCommercialFeatures -XX:+FlightRecorder

使用参考

jprofiler

JProfiler 是一个商业授权的 Java剖析工具,是由 ej-technologies 公司开发的一款 Java 应用性能诊断工具。它聚焦于四个重要主题上:

方法调用 - 对方法调用的分析可以帮助您了解应用程序正在做什么,并找到提高其性能的方法。

内存分配 - 通过分析堆上对象、引用链和垃圾收集能帮您修复内存泄漏问题,优化内存使用。

线程和锁 - JProfiler 提供多种针对线程和锁的分析视图助您发现多线程问题。

高级子系统 - 许多性能问题都发生在更高的语义级别上。例如,对于JDBC调用,您可能希望找出执行最慢的 SQL 语句。JProfiler 支持对这些子系统进行集成分析。

使用参考

Arthas

Arthas是什么

Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。

Arthas支持JDK 6+,支持Linux/Mac/Winodws,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。

Arthas官方文档

相关文章

  • 2020互联网Java后端面试专题解析—JVM21题

    前言 文章对 JVM 内存区域分布、JVM 内存溢出分析、JVM 垃圾回收算法/垃圾收集器、JVM 性能调优工具及...

  • jvm 分析工具

    jdk给我们提供了很多的工具,让我们检测运行中的程序,帮助我们更好的优化程序和发现问题。在网站找到了java命令学...

  • JVM 分析工具

    jcmd 在JDK1.7以后,新增了一个命令行工具 jcmd。他是一个多功能的工具,可以用它来导出堆、查看Java...

  • 服务器JVM等查看

    常用 JVM性能调优监控工具JDK内置工具使用JAVA线程dump分析JVM致命错误日志1 . CPU的监控 cs...

  • Mac OS下MAT(Memory Analyzer Tool)

    简述MAT(Memory Analyzer Tool),内存分析工具,是一款常用的JVM调优工具,对于分析内存泄漏...

  • JVM在线诊断分析工具--Arthas

    Arthas是阿里开源的在线jvm诊断分析工具, 采用了命令行交互的方式进行jvm管理分析, 引用官方文档来说, ...

  • JVM系列:(6)JVM常用监控分析工具

    在日常Java开发中,JVM工具是分析各种线上问题的利器。本文重点介绍常见的JVM工具的简单使用:jinfo,jp...

  • JDK14的新特性:JFR,JMC和JFR事件流

    简介 Java Flight Recorder(JFR)是JVM的诊断和性能分析工具。它可以收集有关JVM以及在其...

  • jvm分析工具以及应用

    jvm分析工具以及应用 1、jps (JVM Process Status Tool)显示指定系统中所有的虚拟机进...

  • jvm crash分析工具

    介绍一款非常好用的jvm crash分析工具,当jvm挂掉时,会产生hs_err_pid.log。里面记录了jvm...

网友评论

      本文标题:JVM 分析工具

      本文链接:https://www.haomeiwen.com/subject/lgibyctx.html