首页
›
移动端与Android应用开发
›
036-移动稳定性与性能调优
›
《OOM预防与Heap Dump分析学习》
VIP20
本课程属于:036-移动稳定性与性能调优
移动端与Android应用开发 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
OOM预防与Heap Dump分析学习
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
OOM现象识别与分类
内存溢出错误类型 · 典型错误信息 · 区分堆内存/元空间/直接内存
OOM
现象识别
02
堆内存结构基础
新生代 · 老年代 · 元空间
堆内存结构基础
新生代
03
OOM触发条件分析
堆内存不足的原因 · 内存泄漏与内存增长的区别
OOM
触发条件分析
04
Heap Dump概念与触发
什么是Heap Dump · 何时触发(主动/被动)
Heap
Dump
05
常用Heap Dump工具介绍
jmap · jcmd · MAT
Heap
Dump
06
堆转储文件获取
jmap命令 · 自动生成参数-XX
堆转储文件获取
jmap
07
堆转储安全注意事项
生产环境风险 · 文件大小 · 压缩
堆转储安全注意事…
生产环境风险
08
使用MAT进行Heap Dump分析
总体流程 · 打开文件 · Overview
MAT
Heap
09
识别大对象与GC Roots
使用MAT的Dominator Tr… · Biggest Objects
GC
Roots
10
查找可疑对象集合
List objects · Path to GC Roots · Thread Overview
查找可疑对象集合
List
11
内存泄漏常见模式
静态集合 · 未关闭资源 · ThreadLocal
内存泄漏常见模式
静态集合
12
分析线程与栈
线程dump与heap dump结合 · 活跃线程内存
分析线程
dump
13
诊断内存溢出(OOM)具体原因
通过Heap Dump定位异常分配点
OOM
诊断内存溢出
14
使用VisualVM实时监控与Dump
监控堆使用趋势 · 触发dump
VisualVM
Dump
15
案例
ArrayList无限添加导致OOM · dump分析 · 修复
案例
ArrayList
16
案例
HashMap key泄漏
案例
HashMap
17
案例
连接池/缓存未释放:DB连接 · 文件句柄 · Socket
案例
DB
18
案例
String.intern()滥用导…
案例
String.inter…
19
案例
大量创建ThreadLocal对象无…
案例
ThreadLocal
20
案例
CGLib/动态代理生成大量类导致M…
案例
CGLib
21
内存泄漏的预防设计
代码审查关键点 · 弱引用/软引用使用
内存泄漏的预防设…
代码审查关键点
22
JVM参数调优预防OOM
堆大小 · 新生代比例 · GC策略选择
JVM
OOM
23
线上监控与告警体系
JVM监控指标 · Prometheus + Grafa… · 阈值设置
线上监控
告警体系
24
定期Heap Dump采样的策略
定时dump · 保留最近N份
Heap
Dump
25
容器环境下的OOM预防
限制容器内存 · JVM与cgroup协调
OOM
容器环境下的
26
内存泄漏自动化检测工具
SpotBugs · FindBugs · IntelliJ Analyze
内存泄漏自动化检…
SpotBugs
27
故障树构建
OOM排查决策树 · 从现象到根因
故障树构建
OOM
28
修复动作后复测清单
验证OOM不再发生 · 内存稳定 · 性能对比
修复动作后复测清…
OOM
29
OOM应急预案
快速回滚 · 保留现场 · dump采集
OOM
应急预案
30
总结与常见误区
预防优于排查 · 不要依赖GC自动回收 · 对象池化原则
常见误区
预防优于排查
所属VIP或分类
同VIP:AMS与WMS系统性能分析与启动优化
同VIP:Android-Crash治理与异常捕获教程
同VIP:Android-Studio-Profiler帧率分析教程