一次线上OOM排查实录:从告警到定位,踩了不少坑

发布时间:2026/8/22 1:30:56

一次线上OOM排查实录:从告警到定位,踩了不少坑
周三下午快下班的时候运维群里突然我说线上有个服务内存一直在涨已经触发告警了。我看了一眼监控确实JVM堆内存从下午两点开始就一路往上爬GC频率明显变高Full GC之后也回收不了多少。典型的内存泄漏表现。先止血线上不能一直挂着先把服务重启了同时把JVM参数里加上了OOM时自动dump的配置-XX:HeapDumpOnOutOfMemoryError -XX:HeapDumpPath/data/logs/heapdump.hprof这个参数之前其实一直有但之前没触发过所以也没太在意。这次算是派上用场了。拿到dump文件重启之后内存确实降下来了但问题没解决。大概过了三个小时又涨上去了。这次直接等到了OOM触发dump文件自动生成了。dump文件大概1.8Gscp到本地之后用MAT打开。分析过程打开MAT之后先看Overview直接就能看到有个HashMap占了将近60%的堆内存。点进去看GC Roots调用链大概是这样的Thread-xxx - com.xxx.service.OrderSyncService.sync() - java.util.HashMap看到OrderSyncService我就大概知道问题在哪了。这个服务是做订单同步的之前有个需求是要做去重当时开发同学用了一个静态的HashMap来做缓存说是临时方案结果这个临时方案就一直没改过。问题在于这个Map只put不remove订单数据越来越多内存就这么一直涨。修复改法其实不复杂把静态HashMap换成了Guava的Cache设置了过期时间和最大容量private static final CacheString, OrderDTO orderCache CacheBuilder.newBuilder() .maximumSize(10000) .expireAfterWrite(30, TimeUnit.MINUTES) .build();同时加了一个定时任务每小时清理一次过期数据作为兜底。几点反思静态集合类是OOM的重灾区。项目里凡是看到static Map、static List这种都要多问一句有没有清理机制JVM参数不要偷懒。HeapDumpOnOutOfMemoryError这个参数建议所有Java服务都加上关键时刻能救命。临时方案一定要记录。很多线上问题都是当初的临时方案没人管最后变成了长期隐患。我们后来在代码review的时候加了一条规则凡是带TODO标记的临时方案必须关联一个issue跟踪。工具推荐排查内存问题常用的几个工具MATEclipse Memory Analyzer分析dump文件首选直观Arthas阿里开源的线上诊断神器heapdump、dashboard命令很好用jstat轻量级适合快速看GC情况jstat -gcutil pid 1000直接看这次排查前后花了大概两个小时核心还是定位问题花的时间多。写出来记录一下也希望能帮到遇到类似问题的同学。有问题的话评论区聊。

相关新闻

3 步完成 FPV 设备配置:BETAFPV 配置工具上手指南

3 步完成 FPV 设备配置:BETAFPV 配置工具上手指南

2026/8/22 1:30:56

3 步完成 FPV 设备配置:BETAFPV 配置工具上手指南 【免费下载链接】BETAFPV_Configurator 项目地址: https://gitcode.com/gh_mirrors/be/BETAFPV_Configurator BETAFPV Configurator 是一款面向 FPV 玩家的桌面端配置工具,负责解决飞控固件刷写…

高渗透率电动汽车随机充电行为下配电网承载能力脆弱性分析与广义需求响应协同优化研究(Matlab代码实现)

高渗透率电动汽车随机充电行为下配电网承载能力脆弱性分析与广义需求响应协同优化研究(Matlab代码实现)

2026/8/22 1:30:56

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 &#x1f381…

海康测速仪接入萤石蓝海AIoT一站式工作台:56个接口全覆盖,多端应用一站生成

海康测速仪接入萤石蓝海AIoT一站式工作台:56个接口全覆盖,多端应用一站生成

2026/8/22 1:30:56

做卡口测速、超速抓拍类应用的开发者,普遍面临一个现实:雷达配置、车牌识别、过车事件解析的对接工作量巨大。萤石蓝海AIoT一站式工作台本期新增海康测速仪(CSY-1-1-3-1-C系列)接入,覆盖车辆识别、雷达通用、道路交通检…

Android APK安装全解析:从基础原理到实战排错指南

Android APK安装全解析:从基础原理到实战排错指南

2026/8/22 2:31:00

在 Android 生态中,APK 文件是应用分发的基石。无论是从第三方网站下载的独立应用,还是开发者自己打包的测试版本,最终都需要通过安装 APK 文件来完成部署。这个过程看似简单,但背后涉及系统权限、安全策略、版本兼容性等一系列技…

3 步上手 N_m3u8DL-RE:M3U8 流媒体下载从一条命令到直播录制

3 步上手 N_m3u8DL-RE:M3U8 流媒体下载从一条命令到直播录制

2026/8/22 2:31:00

3 步上手 N_m3u8DL-RE:M3U8 流媒体下载从一条命令到直播录制 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL…

2026届AI校招趋势:工程化与商业落地成核心

2026届AI校招趋势:工程化与商业落地成核心

2026/8/22 2:31:00

1. 项目概述:AI校招需求报告的核心价值这份2026届校招AI人才需求报告可以说是当前技术求职领域的风向标。作为经历过三次技术浪潮的老兵,我深知这类报告对职业规划的重要性——它不仅仅是简单的岗位统计,更是整个行业技术栈变迁的缩影。去年辅…

如何用 ppInk 免费做屏幕标注:Windows 屏幕批注的实用技巧

如何用 ppInk 免费做屏幕标注:Windows 屏幕批注的实用技巧

2026/8/22 2:31:00

如何用 ppInk 免费做屏幕标注:Windows 屏幕批注的实用技巧 【免费下载链接】ppInk Fork from Gink 项目地址: https://gitcode.com/gh_mirrors/pp/ppInk 在远程会议里你说“看右上角这个图表”,对方还是找不到位置;在线讲课时想圈出课…

3 步让 Windows 任务栏透明:TranslucentTB 安装与定制完整指南

3 步让 Windows 任务栏透明:TranslucentTB 安装与定制完整指南

2026/8/22 2:31:00

3 步让 Windows 任务栏透明:TranslucentTB 安装与定制完整指南 【免费下载链接】TranslucentTB A lightweight utility that makes the Windows taskbar translucent/transparent. 项目地址: https://gitcode.com/gh_mirrors/tr/TranslucentTB 深夜想欣赏一眼…

VRChat 实时翻译工具 VRCT 完整指南:从安装到双方互译

VRChat 实时翻译工具 VRCT 完整指南:从安装到双方互译

2026/8/22 2:21:00

VRChat 实时翻译工具 VRCT 完整指南:从安装到双方互译 【免费下载链接】VRCT VRCT(VRChat Chatbox Translator & Transcription) 项目地址: https://gitcode.com/gh_mirrors/vr/VRCT 在 VRChat 的交换世界里,对面玩家聊得热火朝天&#xff0c…

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

2026/8/21 21:41:19

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

2026/8/20 21:07:35

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

2026/8/19 8:02:16

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

多尺度智能体控制:从宏观密度场到微观决策的架构与实践

多尺度智能体控制:从宏观密度场到微观决策的架构与实践

2026/8/22 0:00:52

1. 从宏观到微观:多尺度智能体控制的核心挑战在智能体(Agent)技术日益普及的今天,我们面临着一个越来越普遍的难题:如何同时管理成千上万个,甚至百万级别的智能体?无论是城市交通中的自动驾驶车…

CUBE标准:统一AI智能体评测的度量衡与架构解析

CUBE标准:统一AI智能体评测的度量衡与架构解析

2026/8/22 0:00:52

1. 项目概述:为什么我们需要一个统一的智能体评测标准?最近在折腾各种AI智能体项目,从简单的自动化脚本到复杂的多模态交互系统,我发现了一个让人头疼的共性问题:评测。每次开发完一个智能体,想看看它到底行…

沉金PCB工艺实战指南:从设计到SMT焊接的可靠性保障

沉金PCB工艺实战指南:从设计到SMT焊接的可靠性保障

2026/8/22 0:00:52

在电子硬件开发领域,PCB(印制电路板)的沉金工艺是提升产品可靠性和焊接质量的关键环节。对于需要高密度互连、长期稳定运行或高频信号传输的板卡,如“黍姐仿通行证”这类可能涉及身份识别、数据交互的硬件项目,选择正确…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/22 2:02:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/15 10:10:27

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/22 1:32:34

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…