1 概述

1.1 简介

VisualVM is a visual tool integrating commandline JDK tools and lightweight profiling capabilities. See https://visualvm.github.io for details, downloads and documentation.

VisualVM 是一款集成了命令行JDK工具和轻量化分析能力的可视化工具。

详情、下载、文档请参见 https://visualvm.github.io

1.2 获取本工具

Use Apache Ant 1.9.9 or above and Oracle JDK 8 to build VisualVM from this repository.

1.3 获取源码

First download or clone this repository into directory visualvm. There are two project suites included:首先下载或克隆这个仓库(https://github.com/oracle/visualvm)到visualvm目录下。这里包含有2个项目套件:

  • visualvm (visualvm/visualvm) - suite for the core VisualVM tool
  • plugins (visualvm/plugins) - suite for the VisualVM plugins available in Plugins Center

1.4 如何运行

1.4.1 ant 方式

To run VisualVM, use ant run command in the visualvm/visualvm directory.

1.4.2 windows cmd 方式

本节以 Windows 10、JDK=1.8 ,VisualVM Version = 2.1.5 为例。

  • Step1 编辑${VisualVM_HOME}/etc/visualvm.conf文件,设置JDK路径
#visualvm_jdkhome="/path/to/jdk"
visualvm_jdkhome="D:\Program\Java\jdk1.8.0_261"

此步骤是为了防止启动失败、并报错Connot find Java 1.8 or higher

  • Step2 双击${VisualVM_HOME}visualvm_215\bin\visualvm.exe启动

注:启动后运行过程中的软件数据存放于C:\Users\${USER}\AppData\Roaming\VisualVM,此目录可按自己需要进行重置、清理。

Y JVM 线程分析工具

  • jstack

    • jstack是JDK自带的一个命令行工具,用于生成Java线程转储文件。它可以显示线程状态,锁信息,监视死锁等。
  • VisualVM
  • Eclipse MAT
    • Eclipse MAT(Memory Analyzer Tool)是一个专业的Java内存分析工具,可以分析堆转储文件,查找内存泄漏问题,分析对象引用关系等。
    • https://eclipse.dev/mat/
  • Arthas
  • YourKit Java Profiler
    • YourKit是一个商业化的Java性能分析工具,提供了线程转储分析功能,可以快速定位线程问题,同时还提供了内存和CPU分析功能。
    • https://www.yourkit.com/java/profiler/
  • FastThread
    • FastThread是一款针对Java线程分析的工具,可以帮助用户分析线程转储文件,查找线程问题,识别性能瓶颈等。
    • https://fastthread.io/
  • Glowroot |
    • Glowroot是一个开源的Java应用性能监控工具(Open source Java APM),可以生成线程转储文件,并提供了一些线程分析功能,如线程状态、锁信息等。
    • https://glowroot.org/
  • spotify thread dump analyzer

这些工具都提供了线程转储分析的功能,可以帮助开发人员定位线程问题和优化应用性能。具体选择哪个工具,可以根据自己的需求和喜好进行选择。

X 参考文献

[JDK/APM] 应用诊断工具之VisualVM的更多相关文章

  1. 八、jdk工具之JvisualVM、JvisualVM之二--Java程序性能分析工具Java VisualVM

    目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk ...

  2. <JVM下篇:性能监控与调优篇>03-JVM监控及诊断工具-GUI篇

    笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.cs ...

  3. <JVM下篇:性能监控与调优篇>01-概述篇-02-JVM监控及诊断工具-命令行篇

    笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.cs ...

  4. java 诊断工具——Arthas

    该说不说!小编做的这些功能,最讨厌的就是优化!某些前辈大佬写的代码小辈我实在不敢恭维!那逻辑!那sql! 接下来!今天的主角就登场了,阿里巴巴最近开源出来的一个针对 java 的工具,主要是针对 ja ...

  5. Alibaba Java诊断工具Arthas之快速安装和简单使用

    Alibaba Java诊断工具Arthas简单介绍 : 当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决: 1.这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception ...

  6. JDK中ThreadDump诊断Java代码中的线程死锁问题

    多线程的死锁..死锁不是死了而是线程互相等待... 在项目中可能就是在几十万行的代码中存在一个死锁的问题,如何发现这个问题并且解决这个问题. JavaJDK为我们提供了一个诊断工具叫做ThreadDu ...

  7. (转)权威支持: 选择正确的 WebSphere 诊断工具

    权威支持: 选择正确的 WebSphere 诊断工具 原文:https://www.ibm.com/developerworks/cn/websphere/techjournal/0807_supau ...

  8. Arthas Alibaba 开源 Java 诊断工具

    Arthas 用户文档 English Docs Arthas(阿尔萨斯) 能为你做什么? Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱. 当你遇到以下类似问题而束手无策时,A ...

  9. WebSphere应用服务器内存泄漏探测与诊断工具选择最佳实践

    内存泄漏是比较常见的一种应用程序性能问题,一旦发生,则系统的可用内存和性能持续下降:最终将导致内存不足(OutOfMemory),系统彻底宕掉,不能响应任何请求,其危害相当严重.同时,Java堆(He ...

  10. 使用诊断工具观察 Microsoft.Extensions.DependencyInjection 2.x 版本的内存占用

    目录 准备工作 大量接口与实现类的生成 elasticsearch+kibana+apm asp.net core 应用 请求与快照 Kibana 上的请求记录 请求耗时的分析 请求内存的分析 第2次 ...

随机推荐

  1. [Love] VSCODE 调试 LOVE 引擎游戏

    VSCODE调试LOVE引擎游戏 安装插件 配置插件 按 CTRL + SHIFT + P,打开Preferences: Open User Settings (JSON),为settings.jso ...

  2. 《SQL与数据库基础》15. 触发器

    目录 触发器 语法 示例-insert型触发器 示例-update型触发器 示例-delete型触发器 本文以 MySQL 为例 触发器 触发器是与表有关的数据库对象,指在 insert/update ...

  3. 从达梦数据库到Oracle数据库的性能测试数据迁移和导入优化

    为了在同样的数据基础上对比达梦数据库和Oracle数据库的业务性能,我们需要将达梦数据库的数据导入到Oracle数据库中.本文将提供一种思路来解决导入过程中遇到的问题及存在问题记录. 数据库版本信息 ...

  4. [初学C#] 第二习题 : 快递跟踪信息查询

    刚学C#, 折腾的一个小玩意. 熟悉和了解C#这门编程语言. 没有啥特殊意义 解锁技能 - System.Net 的 WebRequest等http请求 - Newtonsoft.Json 这个第三方 ...

  5. Salesforce LWC学习(四十五) lwc支持Console App控制Tab了

    本篇参考:https://help.salesforce.com/s/articleView?id=release-notes.rn_lwc_workspaceAPI.htm&release= ...

  6. Vue源码学习(五):<templete>渲染第四步,生成虚拟dom并将其转换为真实dom

    好家伙,   前情提要: 在上一篇我们已经成功将ast语法树转换为渲染函数  现在我们继续   1.项目目录 代码已开源https://github.com/Fattiger4399/analytic ...

  7. Python 潮流周刊第 20 期(摘要)

    你好,我是猫哥.本周刊分享优质的 Python.AI 及通用技术内容,大部分为英文.这里是标题摘要版,查看全文请至☞:https://pythoncat.top/posts/2023-09-16-we ...

  8. 算法2:寻找吸血鬼数(JS)

    任务二:寻找吸血鬼数 打印所有4位吸血鬼数和它们的獠牙   提示:一共有7个: 吸血鬼数: -该鬼的位数为偶数: -该数的所有位中.是0的位少一半: -该数每一位上的数字重新组合为两个位数相等的数,乘 ...

  9. Python正则表达式——常用re正则表达式集合

    文章目录 一.校验数字的表达式 二.校验字符的表达式 三.特殊需求表达式 一.校验数字的表达式 数字:^[0-9]*$ n位的数字:^\d{n}$ 至少n位的数字:^\d{n,}$ m-n位的数字:^ ...

  10. Android历史版本

    目录 [隐藏]  1 测试版 2 版本列表 2.1 Android 1.0 2.2 Android 1.1 2.3 Android 1.5 Cupcake 2.4 Android 1.6 Donut ...