JVM监控及诊断工具GUI篇之JConsole
目录
一、图形化工具概述
二、JConsole是什么?
三、JConsole性能分析
一、图形化工具概述
使用上一章命令行工具或组合能帮您获取目标Java应用性能相关的基础信息,但它们存在下列局限:
- 1.无法获取方法级别的分析数据,如方法间的调用关系、各方法的调用次数和调用时间等(这对定位应用性能瓶颈至关重要);
- 2.要求用户登录到目标 Java 应用所在的宿主机上,使用起来不是很方便;
- 3.分析数据通过终端输出,结果展示不够直观;
为此,JDK提供了一些内存泄漏的分析工具,如jconsole,jvisualvm等,用于辅助开发人员定位问题,但是这些工具很多时候并不足以满足快速定位的需求。
JDK自带的工具:
- jconsole:JDK自带的可视化监控工具。查看Java应用程序的运行概况、监控堆信息、永久区(或元空间)使用情况、类加载情况等
- Visual VM:Visual VM是一个工具,它提供了一个可视界面,用于查看Java虚拟机上运行的基于Java技术的应用程序的详细信息。
- JMC:Java Mission Control,内置Java Flight Recorder。能够以极低的性能开销收集Java虚拟机的性能数据。
第三方工具:
- MAT:MAT(Memory Analyzer Tool)是基于Eclipse的内存分析工具,是一个快速、功能丰富的Java heap分析工具,它可以帮助我们查找内存泄漏和减少内存消耗;
- JProfiler:商业软件,需要付费,功能强大;
二、JConsole是什么?
从Java 5开始 引入了 JConsole,JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行。用于对JVM中内存、线程和类等的监控,是一个基于JMX(java management extensions)的GUI性能监控工具。
官方地址:Using JConsole - Java SE Monitoring and ManagementGuide
- 如何启动JConsole?
- 如果是从命令行启动,使 JDK 在 PATH 上,运行 jconsole 即可。
- 如果从 GUI shell 启动,找到 JDK 安装路径,打开 bin 文件夹,双击 jconsole。
C:\Users\QDM>jconsole
如下图,会展示出当前所有的Java进程,类似jps的功能,想分析那个程序就双击哪一个进程:
三、JConsole性能分析
- 概述:Displays overview information about the Java VM and monitored values;
- 内存:显示内存使用信息;
- 线程:显示线程使用信息;
- 类:显示类装载信息;
- VM摘要:显示java VM信息;
- MBeans:显示 MBeans;
【a】概览:展示堆内存使用量、线程、类、CPU使用率
【b】内存:展示堆内存使用量,可以细分Eden、Survivor、metaspace等进行查看
可以查看堆内存,非堆内存,内存池的状况总体内存的分配和使用情况以及不同的GC进行垃圾回收的次数和时间,而且可以手动进行GC查看内存变化。
【c】线程:展示线程相关的信息,也可以检查死锁
左下角显示所有的活动线程(如果线程过多,可以在下面的过滤栏中输入字符串过滤出你想要观察的线程)。点击某个显示会显示这个线程的名称、状态、阻塞和等待的次数、堆栈的信息。
统计图显示的是线程数目的峰值(红色)和当前活动的线程(蓝色)。
检测死锁示例:
如上图,jconsole显示检测到一个死锁,也就是Thread-A和Thread-B都在等各自的锁产生的死锁。
【d】类:展示类加载数量等信息
【e】VM概要:展示VM概要,如JVM相关参数、堆大小、垃圾收集器等信息
JVM监控及诊断工具GUI篇之JConsole相关推荐
- 性能监控与调优篇之【3. JVM 监控及诊断工具-GUI 篇】
文章目录 3. JVM 监控及诊断工具-GUI 篇 3.1. 工具概述 3.2. JConsole 3.3. Visual VM 3.4. Eclipse MAT 3.5. JProfiler 3.6 ...
- JVM监控及诊断工具-GUI篇
3.JVM监控及诊断工具-GUI篇 一.工具概述 使用上一章命令行工具或组合能帮您获取目标Java应用性能相关的基础信息,但它们存在下列局限: 1.无法获取方法级别的分析数据,如方法间的调用关系.各方 ...
- 20.JVM监控以及诊断工具-GUI篇
笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 20. JVM监控及诊断工具-GUI篇 20.1. 工具概述 使用上一章命令行工具或组合能帮您获取目标Java应用性能相 ...
- 干货满满【JVM监控及诊断工具-GUI篇】
[JVM监控及诊断工具-GUI篇] 3.1. 工具概述 使用上一章命令行工具或组合能帮您获取目标Java应用性能相关的基础信息,但它们存在下列局限: 1.无法获取方法级别的分析数据,如方法间的调用关系 ...
- JVM 学习笔记二十六、JVM监控及诊断工具-GUI篇
二十六.JVM监控及诊断工具-GUI篇 1.工具概述 使用上一张命令行工具或组合能帮您获取目标Java应用性能相关的基础信息,但他们存在下列局限: (1)无法获取方法级别的分析数据,如方法间的调用关系 ...
- 第24章 JVM监控及诊断工具-GUI篇
第24章 JVM监控及诊断工具-GUI篇 来自尚硅谷宋红康老师讲解的JVM:bilibili链接 1 工具概述 使用上一张命令行工具或组合能帮您获取目标Java应用性能相关的基础信息,但他们存在下列局 ...
- 15、JVM监控及诊断工具-GUI篇
文章目录 第1章.工具概述 第2章.jConsole 1.基本概述 2.启动 3.三种连接方式 [1]Local [2]Remote [3]Advanced 4.主要作用 第3章.Visual VM ...
- JVM(二十二) -- 性能监控与调优(三) -- JVM监控及诊断工具--GUI篇
1.工具概述 1.1 图形化总和诊断工具: JDK自带的工具 第三方工具 2. jConsole(了解) 从java5开始,在JDK中自带的java监控和管理控制台. 用于对JVM中内存.线程和类等的 ...
- <JVM下篇:性能监控与调优篇>03-JVM监控及诊断工具-GUI篇
笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.cs ...
- Day357358359360.JVM监控及诊断工具-GUI -JVM
JVM监控及诊断工具-GUI 实际中,你下面有1-2款会用即可 一.工具概述 二.JConsole 了解 1.基本概述 2.启动 在jdk安装目录中找到jconsole.exe,双击该可执行文件就可以 ...
最新文章
- Android 防止快速点击
- VS2005 自动生成属性(转)
- Linux系统安装python3和创建python3虚拟环境
- CentOS 7 安装方式汇总
- 休眠事实:有利于双向集vs列表
- vue项目实践教程1:vux项目搭建和简介
- linux用户登录失败,锁定用户
- linux磁盘空间用满的处理方法
- POJ1270 Following Orders(拓扑排序+回溯)
- 谷歌chrome浏览器安装json插件
- android安卓使用socketIO实现聊天室功能
- RestAssured接口自动化框架学习
- CF407C Curious Array
- android 滑动取值_Android中滑屏实现
- springboot+vue基本微信小程序的疫情防控平台系统 计算机毕业设计
- word2016论文不同章节设置页眉页码方法
- Reference 、ReferenceQueue 详解
- (11)EKF - (3) EKF3匹配度和Lane切换
- Python量化学习笔记02——量化投资——以Python为工具 Part01-C02
- 【蓝桥】做题笔记及心得总结(基础篇)
热门文章
- 推荐方法-1:UserCFItemCF
- 自动驾驶 5-1 比例积分微分 (PID) 控制Lesson 1: Proportional-Integral-Derivative (PID) Control
- XLNet 和BERT的区别是什么?
- 559. N叉树的最大深度
- 449.序列化和反序列化二叉搜索树
- 2020 Kyligence 面经
- 前端为什么有的接口明明是成功回调却执行了.catch失败回调_前端战五渣学JavaScript——Promise...
- Axure实操笔记之axure炫酷的作者信息设置
- 多个文件进行合并取前10个数(多线程方式)
- aesmiyao php_PHP实现的AES 128位加密算法示例