当前位置: 首页 > news >正文

Eclipse memory analyzer 分析GC dump日志定位代码问题

1、问题描述:

        使用命令 jstat -gcutil [pid] 查看JVM GC日志,发现生产系统频繁FullGC,大概几分钟一次,而且系统响应速度变慢很多

        再使用 free -g 查看服务器内存全部占用,猜测是内存溢出了

2、导出dump日志

jmap -dump:live,format=b,file=heap.hprof 18051

使用如上命令导出gc日志,其中18051是java线程ID需要自己查询

执行成功后,会在执行命令的文件夹下面生成 heap.hprof 这个文件

3、本地分析日志

打开 Eclipse memory analyzer 解压文件夹

如果dump日志文件很多,需要修改软件配置大小,修改MemoryAnalyzer.ini文件Xmx参数如下

双击运行软件:

 运行上面文件,打开界面后 点击左上角 file -> Open Heap Dump 选择上面的heap.hprof文件

选择文件,进行分析成功后显示如下界面:

点击上图红框进入泄露页面:

 keywords已经显示代码问题大概,点击下面的details查看详情

 打开可以看到是LIst占用了很大空间,也可以查看Thread Stack,如下图所示

 

 4、服务器直接分析日志

        如果日志文件很大的话,下载到本地需要很多的时间,而且打开也可能会报错,这时候我们可以在服务器直接进行分析,操作步骤如下:

1、上传 Eclipse memory analyzer linux版本到linux服务器,并使用unzip 解压上传后文件,解压后如下图所示

2、复制dump文件到相同文件夹,也可以新建文件夹,因为分析完成后,会生成很多分析文件

3、运行命令执行分析,这里注意需要修改analyzer配置文件设置内存空间大于需要分析的日志文件,这里设置30000M

 运行命令:

./ParseHeapDump.sh heap.hprof  org.eclipse.mat.api:suspects org.eclipse.mat.api:overview org.eclipse.mat.api:top_components

 分析成功后如下图所示:

 主要文件是途中三个zip文件,下载到本地,解压后打开文件夹里面的.index页面,也会显示分析图,只是没有直接使用软件详细

相关文章:

Eclipse memory analyzer 分析GC dump日志定位代码问题

1、问题描述: 使用命令 jstat -gcutil [pid] 查看JVM GC日志,发现生产系统频繁FullGC,大概几分钟一次,而且系统响应速度变慢很多 再使用 free -g 查看服务器内存全部占用,猜测是内存溢出了 2、导出dump日志 jmap -du…...

DSA之图(3):图的遍历

文章目录 0 图的遍历1 图的遍历方法1.1 深度优先搜索DFS1.1.1 DFS的思想1.1.2 邻接矩阵DFS的实现1.1.3 邻接矩阵DFS的代码实现1.1.4 非连通图的DFS遍历1.1.5 DFS算法效率分析 1.2 广度优先搜索BFS1.2.1 BFS的思想(连通图)1.2.2 BFS的思想(非连…...

从零开始学习 Java:简单易懂的入门指南之for循环(四)

java基础知识 流程控制语句1.1 流程控制语句分类1.2 顺序结构 判断语句:if语句2.1 if语句格式1练习1:老丈人选女婿练习2:考试奖励第一种格式的细节: 2.2 if语句格式2练习1:吃饭练习2:影院选座 2.3 if语句格…...

Android 之 http/https原理和机制

http---HyperTextTransfer Protocol 超文本传输协议 超文本-文本、HTML http的工作方式 c/b结构 如浏览器访问到服务器。 即发送请求->相应。 Url-Http报文 http://www.baidu.com/path 协议类型:http or https or websocket 服务器地址 BaseUrl 路径&…...

mybatis源码研究、搭建mybatis源码运行的环境

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、有兴趣的可以关注一手。 前提 研究源码、对我们的技术提高还是很有帮助的。简单的源码建议从mybatis入手。涉及到的设计模式不是很多。需要下载mybatis的源码和父工程依赖。注意下载的mybatis中的父工程依…...

【算法基础:搜索与图论】3.5 求最小生成树算法(PrimKruskal)

文章目录 最小生成树介绍朴素Prim算法算法思路⭐例题:858. Prim算法求最小生成树 Kruskal算法算法思路⭐例题:859. Kruskal算法求最小生成树 最小生成树介绍 最小生成树 有关树的定义 生成子图:生成子图是从原图中选取部分节点以及这些节点…...

扩展Ceph集群实现高可用

...

代码随想录 DAY45

class Solution { public: int climbStairs(int n) { vector<int>dp(n1,0); dp[0]1; for(int j0;j<n;j){ for(int i1;i<2;i){ if(j>i) dp[j]dp[j-i]; } } return dp[n]; } }; 这个题还是说想清楚 这个因为有1和2 阶的情况 所以i就是从1开始遍历 然后小于等于…...

Centos报错:[Errno 12] Cannot allocate memory

执行一个脚本刚开始正常&#xff0c;后面就报[Errno 12] Cannot allocate memory 如果内存不足&#xff0c;可能需要增加交换内存。或者可能根本没有启用交换。可以通过以下方式检查您的交换: sudo swapon -s如果它为空&#xff0c;则表示您没有启用任何交换。添加 1GB 交换…...

手把手教你怎么写顺序表

目录 一、顺序表有什么功能&#xff1f; 二、实现顺序表的各个功能 1.前置准备 2.初始化顺序表 3.顺序表扩容 4.打印顺序表 5.增加顺序表成员 5.1尾增 5.2头增 6.删除顺序表中成员的内容 6.1尾删 6.2头删 7.查找成员 8.修改(替换) 9.插入(在目标位置插入成员) 10.定…...

FPGA中RAM的结构理解

FPGA中RAM的结构理解 看代码的过程中对RAM的结构不是很理解&#xff0c;搞脑子一片浆糊&#xff0c;反复推算&#xff0c;好不容易理清了思路&#xff0c;记录下来&#xff0c;防止忘记。开辟的RAM总容量为128bytes&#xff0c;数据的位宽为32位&#xff08;即一个单元有32bit…...

家庭用的无线洗地机到底好不好用?2023洗地机品牌排行榜前十名

无线洗地机在清洁使用的时候非常便捷&#xff0c;多功能于一体能够轻轻松松就拖扫完全家&#xff0c;不需要多余的先扫再拖&#xff0c;浪费时间还非常的劳累。那么有什么靠谱并且质量也有保障的无线洗地机推荐吗&#xff1f;为了给想要选购洗地机的小伙伴提供一些参考&#xf…...

[React]常见Hook实现之useUpdateEffect

useUpdateEffect是一个自定义的React Hook&#xff0c;用于在组件更新时执行副作用。它的实现原理如下&#xff1a; useEffect和useLayoutEffect&#xff1a;useUpdateEffect内部使用useEffect或useLayoutEffect来注册副作用函数。这两个Hook函数都接受一个回调函数和依赖项数…...

为什么视频画质会变差,如何提升视频画质清晰度。

在数字时代&#xff0c;视频已经成为我们生活中不可或缺的一部分。然而&#xff0c;随着视频的传输和处理过程中的多次压缩&#xff0c;画质损失逐渐凸显&#xff0c;影响了我们对影像的真实感受。为了让视频画质更加清晰、逼真&#xff0c;我们需要采取一些措施来保护和修复视…...

【uni-app2.0】实现登录页记住密码功能

使用uni-app的uni.setStorageSync()和uni.getStorageSync()方法来存储和读取密码 在登录页中添加一个记住密码的u-checkbox选项&#xff0c;并在data里面添加一个rememberPwd的布尔值&#xff0c;在每次点击记住密码change的时候来记录用户的选择 <u-checkbox-group place…...

IDEA live templates

surround 在SQL的xml里 可以修改变量 官方文档 CDATA not null <if test"$SELECTION$ ! null and $SELECTION$ ! "> and $VAR1$ #{$SELECTION$} </if>not null like mysql <if test"$SELECTION$ ! null and $SELECTION$ ! "> and…...

电子鼻毕业论文

面向压埋探测的人体代谢气体识别方法的研究与应用 实现对非目标气体的检测 数据预处理 &#xff08;1a&#xff09;标准化 将采集到的数据先进行变换&#xff0c;统一数量级。其中&#xff0c;xij为第j个传感器的第i个采样值&#xff1b;xj为第 j 个气体传感器的所有采样值&…...

8 | 爬虫解析利器 PyQuery 的使用

文章目录 爬虫解析利器 PyQuery 的使用简介安装基本用法初始化查找元素遍历元素修改元素练习题练习题 1练习题 2答案练习题 1练习题 2总结爬虫解析利器 PyQuery 的使用 简介 PyQuery 是一个 Python 的库,它是 jQuery 的 Python 实现。PyQuery 可以让开发者使用类似于 jQuery…...

2023年 React 最佳学习路线

CSS CSS JavaScript JavaScript TypeScript 目前没有找到比其他文档好很多的文档地址 可以先看官网 React 新版 React 官方文档无敌 React React-router-dom V5 V6 Webpack webpack Antd antd...

使用 ChatGPT 进行研究的先进技术

在这篇文章中&#xff0c;您将探索改进您研究的先进技术。尤其&#xff0c; 分析和解释研究数据进行文献综述并找出研究差距废话不多说直接开始吧&#xff01;&#xff01;&#xff01; 分析和解释研究数据 一家小企业主希望分析客户满意度数据以改善客户服务。他们使用包含 10…...

告别付费IP!手把手教你用ZCU102 PS端DP接口点亮显示器(附参数调试心得)

解锁ZCU102 PS端DisplayPort潜力&#xff1a;零成本实现高效显示输出的实战指南 在嵌入式视觉系统开发中&#xff0c;显示输出往往是项目落地的最后一道关卡。当我在多个Zynq UltraScale MPSoC项目中反复遭遇HDMI IP核的授权困扰和PL端实现的复杂性后&#xff0c;意外发现PS端集…...

ENet核心架构深度解析:从主机管理到对等通信

ENet核心架构深度解析&#xff1a;从主机管理到对等通信 【免费下载链接】enet ENet reliable UDP networking library 项目地址: https://gitcode.com/gh_mirrors/en/enet ENet是一款高性能的可靠UDP网络库&#xff0c;专为实时多人游戏和低延迟应用设计。它通过创新的…...

Graphormer企业级应用:制药公司分子筛选流水线中的轻量部署实践

Graphormer企业级应用&#xff1a;制药公司分子筛选流水线中的轻量部署实践 1. 项目背景与价值 在药物研发领域&#xff0c;分子筛选是耗时耗力的关键环节。传统实验方法需要数月时间才能完成数千种化合物的性质测试&#xff0c;而基于AI的分子属性预测技术可以将这一过程缩短…...

HUNYUAN-MT 7B翻译终端Python爬虫数据清洗实战:多语言文本归一化处理

HUNYUAN-MT 7B翻译终端Python爬虫数据清洗实战&#xff1a;多语言文本归一化处理 1. 引言 你有没有遇到过这种情况&#xff1f;辛辛苦苦用Python爬虫从全球各地的网站、论坛、社交媒体上抓取了一大堆数据&#xff0c;准备做分析或者训练模型&#xff0c;结果打开一看&#xf…...

别再只用Wireshark了!用Cain Abel在Windows上5分钟复现ARP欺骗攻击(附实战截图)

从Wireshark到Cain & Abel&#xff1a;用经典工具5分钟掌握ARP欺骗核心原理 如果你已经能用Wireshark分析网络流量&#xff0c;却对ARP欺骗的原理一知半解&#xff0c;那么这款诞生于2002年的老牌工具Cain & Abel会让你眼前一亮。不同于现代抓包工具的被动观察&#xf…...

n600高效涡流选粉机设计【说明书 CAD图纸 开题报告 任务书 实习报告】

n600高效涡流选粉机作为粉体分级领域的核心设备&#xff0c;其设计聚焦于提升分级精度与处理效率。该设备通过优化涡流场分布与颗粒运动轨迹&#xff0c;实现微细粉体的高效分离。其核心作用在于利用离心力和气流的复合作用&#xff0c;使不同粒径的颗粒在旋转流场中产生差异化…...

DanKoe 视频笔记:原创思维指南:如何进行原创思考

在本教程中&#xff0c;我们将学习如何摆脱思维定式&#xff0c;培养真正的原创思考能力。我们将探讨为何独立思考如此困难&#xff0c;并提供一套实用的方法来帮助你形成自己的观点、连接不同领域的知识&#xff0c;并最终创造出有价值的内容。 概述 每个人都希望成为一个原创…...

ESP32-S3离线语音唤醒实战:从单元测试到自定义指令集

1. ESP32-S3离线语音唤醒开发环境搭建 第一次接触ESP32-S3的语音识别功能时&#xff0c;我花了两天时间才把开发环境配置好。这里分享下我的踩坑经验&#xff0c;帮你节省时间。ESP-IDF的环境配置其实不难&#xff0c;但有几个关键点容易出错。 首先需要安装ESP-IDF v4.4或更高…...

Octomap在二维导航地图转换中的常见问题与优化策略

1. Octomap二维地图转换的核心挑战 第一次接触Octomap进行三维到二维地图转换时&#xff0c;我被它强大的空间建模能力吸引&#xff0c;但实际操作中踩了不少坑。最典型的就是发现生成的二维地图要么全是噪点&#xff0c;要么和实际环境对不上。后来才明白&#xff0c;这背后涉…...

GY39传感器实战:从数据采集到环境监测应用

1. GY39传感器入门指南 第一次拿到GY39传感器时&#xff0c;我完全被它小巧的体积震惊了。这个只有拇指大小的模块&#xff0c;居然能同时测量气压、温湿度、光照强度四种环境参数。它的工作电压是3-5V&#xff0c;用普通的USB充电器就能供电&#xff0c;特别适合DIY项目。 GY3…...