IBM java的分析工具(ga和ha)学习和整理
IBM java的分析工具(ga和ha)学习和整理
背景
前几天学习了整理了 jca 工具
今天继续学习一下 ga工具
ga 工具主要是分析gclog相关.
可以很直观的进行gclog的分析和展示.
除了mat之外还有一个比较轻量级的内存dump分析工具
ha. 想着一起学习和分析一下.
ga工具的相关学习
下载:
https://www.ibm.com/support/pages/ibm-pattern-modeling-and-analysis-tool-java-garbage-collector-pmat
同意一下就可以下载对应的jar包了.
启动配置要求
需要增加配置信息:
-XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC
需要进行gclog的打印.
-Xloggc:/tmp/gclog
方便的话还可以打印一下native Memory
-XX:NativeMemoryTracking=detail
简单使用
使用 java -jar的方式将 ga 工具启动起来.
然后加载对应的gclog 就可以进行分析.
需要注意使用方式与之前的jca比较类似, 这里不在重复.

ha工具的相关学习
下载地址:
https://www.ibm.com/support/pages/ibm-heapanalyzer
注意这个文档强烈建议 使用mat.
需要注意的是 这个工具比较小巧, 速度会快一些.
Note: IBM HeapAnalyzer has no new development and therefore,
in general, we recommend using the Eclipse Memory Analyzer Tool (MAT) instead which is open source,
has active development, and has a similar feature set (leak suspects, etc.).
mat 分析一个 27G的dump文件要耗时 25min 以上, ha 工具的分析时间大约为:
如果是内存比较小, 并且机器磁盘比较垃圾. mat分析可能要超过一个多小时. 所以节约的时间可能还比较可观.
简单使用
java -jar 就可以启动 ha的工具.
然后打开dump文件就可以分析.
工具与mat有一些相近. 使用方式主要如下:
缺点
界面比较卡顿, 虽然可能比mat打开的速度快一些,
但是对数表键盘的支持比较差, 拖动时容易出现问题.
共同的缺点
其实不管是mat和ha 都需要大量的磁盘写入.
mat 大概要产生跟prof文件相同大小的索引文件
ha 要产生一般大小的hax后缀的文件.

IBM java的分析工具(ga和ha)学习和整理的更多相关文章
- Java 性能分析工具 , 第 3 部分: Java Mission Control
引言 本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Jav ...
- Java 性能分析工具 , 第 2 部分:Java 内置监控工具
引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工 ...
- TDA - Thread Dump Analyzer (Java线程分析工具)
TDA - Thread Dump Analyzer (Java线程分析工具)http://automationqa.com/forum.php?mod=viewthread&tid=2351 ...
- JAVA 可视化分析工具 第12节
JAVA 可视化分析工具 第12节 经过前几章对堆内存以及垃圾收集机制的学习,相信小伙伴们已经建立了一套比较完整的理论体系!那么这章我们就根据已有的理论知识,通过可视化工具来实践一番. 我们今天要讲 ...
- 超好用的自带火焰图的 Java 性能分析工具 Async-profiler 了解一下
如果你经常遇到 Java 线上性能问题束手无策,看着线上服务 CPU 飙升一筹莫展,发现内存不断泄露满脸茫然.别慌,这里有一款低开销.自带火焰图.让你大呼好用的 Java 性能分析工具 - async ...
- Java开发分析工具JProfiler的详细使用方法解析
JProfiler 11 是一款功能强大的Java代码分析工具,JProfiler的直观UI可帮助您解决性能瓶颈,确定内存泄漏并了解线程问题且JProfiler 11 Mac破解版配置会话非常简单,第 ...
- Java 性能分析工具 , 第 1 部分: 操作系统工具
引言 性能分析的前提是将应用程序内部的运行状况以及应用运行环境的状况以一种可视化的方式更加直接的展现出来,如何来达到这种可视化的展示呢?我们需要配合使用操作系统中集成的程序监控工具和 Java 中内置 ...
- Java 性能分析工具
如何利用 JConsole观察分析Java程序的运行,进行排错调优 http://jiajun.iteye.com/blog/810150 如何使用JVisualVM进行性能分析 http://jia ...
- Java内存分析工具MAT
MAT是一个强大的内存分析工具,可以快捷.有效地帮助我们找到内存泄露,减少内存消耗分析工具.内存中堆的使用情况是应用性能监测的重点,而对于堆的快照,可以dump出来进一步分析,总的来说,一般我们对于堆 ...
- java性能分析工具
jcmd:向JVM发送诊断的命令,jvm未必会全部响应,有些需要在jvm开启相应功能才能响应.个人平时用的不是很多. SampleA: 添加 jcmd pid VM.native_mem ...
随机推荐
- 2021-01-04:mysql里的innodb引擎的数据结构,你有看过吗?
福哥答案2021-01-04: 面试官刚开始问我看过mysql源码没,然后问了这个问题.回答B+树,过不了面试官那关. 答案来自<MySQL技术内幕 InnoDB存储引擎 第2版>第四章, ...
- java中获取公网IP
package com.dashan.utils.iputils; import org.apache.commons.lang.StringUtils; import java.io.Buffere ...
- Spring Cloud 学习推荐
学习 Spring Boot Spring tutorials | Java Web Development, Spring Cloud Programming tutorials Spring Bo ...
- 细说SQL与ETL之间的小秘密
本文分享自华为云社区<GaussDB数据库SQL系列-SQL与ETL浅谈>,作者:Gauss松鼠会小助手2. 一.前言 在SQL语言中,ETL(抽取.转换和加载)是一种用于将数据从源系统抽 ...
- 华为IoT首席架构师王启军:全栈工程师“养成记”
在王启军的公众号里,有一篇<My Team>的文章,里面记录了早年他所带团队成长的心得. 这个被他称为完美组合的团队,并不是来自大厂名企,彼时王启军给不起高待遇,团队核心成员中还有很多人是 ...
- 华为云发布CodeArts Req需求管理工具,让需求管理化繁为简
摘要:华为云正式发布CodeArts Req,这是一款自主研发的软件研发管理与团队协作工具,旨在助力企业大规模研发转型成功,释放组织生产力. 本文分享自华为云社区<华为云发布CodeArts R ...
- 火山引擎ByteHouse:如何用OLAP引擎提升数字营销效果?
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 随着市场竞争的加剧,企业对数字营销投入的效果监测和优化需求日益增强,营销实时监控也成为企业提升运营效率的重要手 ...
- 创建一个简单的Docker镜像
1. 创建 Dockerfile 文件.index.html测试页面 [root@localhost docker]# vi Dockerfile FROM nginx:1.17.6 #基于 ngin ...
- Sublime Text 查找的内容 高亮显示
1. 默认情况下是方框,看起来不太方便 2. 选中 "同" 然后按 Alt +F3[下方的查询框要出现,没有的话按 Ctrl+F 调出来,否则不会高亮显示] 同时,选中的文字还会填 ...
- JVM学习-自动内存管理
文章原文:https://gaoyubo.cn/blogs/6997cf1f.html 一.运行时数据区 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域.这些区域 ...