2025年hprof文件分析内存问题(hprof文件用什么打开)

hprof文件分析内存问题(hprof文件用什么打开)我负责的 APP 项目系统 简称 A 系统 在与其它项目 T 系统不在同一个服务器的情况下 发现 T 系统重启会导致 A 系统并发量瞬间暴增 最后导致 A 系统内存溢出挂掉 通过 XShell6 工具查看系统服务日志 下载日志并排查在服务器宕机的时间内的异常 异常信息中没有具体哪个接口 方法导致 于是找运维要了 heapdump 文件 利用 JDK 带的 jvisualvm 工具进行分析 工具位置 在 JDK 中的 bin 目录下

大家好,我是讯享网,很高兴认识大家。



我负责的APP项目系统,简称A系统。在与其它项目T系统不在同一个服务器的情况下,发现T系统重启会导致A系统并发量瞬间暴增,最后导致A系统内存溢出挂掉。

Memory Analyzer内存溢出问题排查_服务器
讯享网

Memory Analyzer内存溢出问题排查_高并发_02

Memory Analyzer内存溢出问题排查_服务器_03

将定位到的接口交给测试进行压测,压测的结果的是其中一个接口在并发量50就出问题,进行优化再上线。

发布版本后发现A系统还是挂掉

Memory Analyzer内存溢出问题排查_运维_04

1、优化了接口,压测结果:1000并发量没有出现异常
2、T系统修改了BUG
3、运维修改了配置

后面T系统重启两次,APP项目无异常,准备后续T系统再发版本重启系统,监测下情况。待续


排查的结果是第三方重启时还是会多次调用一个接口,偶尔会不传参进行调用,导致接口查询了全表数据,数据量太大导致内存溢出

Memory Analyzer内存溢出问题排查_运维_05

Memory Analyzer内存溢出问题排查_高并发_06

Memory Analyzer内存溢出问题排查_java_07

Memory Analyzer内存溢出问题排查_高并发_08

Memory Analyzer内存溢出问题排查_高并发_09

点击Leak Suspects查看具体的内存泄露报告

Memory Analyzer内存溢出问题排查_运维_10

DETAILS

Memory Analyzer内存溢出问题排查_并发_11

点击圈起来的,查看引用关系,下图,可以很清晰的看到是由于ArrayList中放了18W个byte数组造成的

Memory Analyzer内存溢出问题排查_java_12

回到details,点击选择Java basics-》Thread Details

Memory Analyzer内存溢出问题排查_java_13

Memory Analyzer内存溢出问题排查_java_14

Memory Analyzer内存溢出问题排查_运维_15

小讯
上一篇 2025-05-24 12:57
下一篇 2025-05-22 07:32

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/138379.html