Flink从入门到精通100篇(十二)-如何分析和定位 Flink 作业 OOM 问题?
前言
生产环境,我们的 Flink 作业偶尔会出现 heap OOM,那么当出现这种情况我们会怎么办?通常来说会通过 jmap 命令去将作业的 heap dump 一份文件出来,可是 jmap 导出的文件我们也看不懂啊,那么该怎么分析呢?今天推荐 memory analyzer(mat)这个工具,让他帮助我们来观察程序的内存分布情况吧。
MAT 不是一个万能工具,它并不能处理所有类型的堆存储文件。但是比较主流的厂家和格式,例如 Sun, HP, SAP 所采用的 HPROF 二进制堆存储文件,以及 IBM 的 PHD 堆存储文件等都能被很好的解析。下面来看看要怎么做呢,也许对你有用。官方文档:http://help.eclipse.org/luna/index.jsp?topic=/org.eclipse.mat.ui.help/welcome.html
造成OutOfMemoryError原因一般有2种:
1、内存泄露,对象已经死了,无法通过垃圾收集器进行自动回收,通过找出泄露的代码位置和原因,才好确定解决方案;
2、内存溢出,内存中的对象都还必须存活着,这说明Java堆分配空间不足,检查堆设置大小(-Xmx与-Xms),检查代码是否存在对象生命周期太长、持有状态时间过长的情况。
jmap 命令生成堆信息
jmap -dump:live,format=b,file=E:/jmap/heap.dump pid
Flink从入门到精通100篇(十二)-如何分析和定位 Flink 作业 OOM 问题?相关推荐
- Flink从入门到精通100篇(二十三)-基于Apache Flink的爱奇艺实时计算平台建设实践
前言 随着大数据的快速发展,行业大数据服务越来越重要.同时,对大数据实时计算的要求也越来越高.今天会和大家分享下爱奇艺基于Apache Flink的实时计算平台建设实践. 今天的介绍会围绕下面三点展开 ...
- Flink从入门到精通100篇(二十一)-万字长文详解 Flink 中的 CopyOnWriteStateTable
前言 现如今想阅读 HashMap 源码实际上比较简单,因为网上一大堆博客去分析 HashMap 和 ConcurrentHashMap.本文详细分析 CopyOnWriteStateTable 源码 ...
- Flink从入门到精通100篇(二十四)-对Flink SQL Client 源码做深度解析
前言 本文基于 Flink 1.12-SNAPSHOT,使用sql client命令行提交insert语句进行整个流程的分析. sql-client.sh embedded --update &quo ...
- Flink从入门到精通100篇(二十二)- Flink应用实战案例:如何实现网络流控与反压机制
目录 Flink 流处理为什么需要网络流控? Flink V1.5 版之前网络流控介绍 Flink V1.5 版之前的反压策略存在的问题 Credit的反压策略实现原理,Credit是如何解决 Fli ...
- Flink从入门到精通100篇(二十二)-Apache Flink OLAP引擎性能优化及应用
前言 本次分享的主题为Apache Flink新场景--OLAP引擎,主要内容包括: 背景介绍 Apache Flink OLAP引擎 案例介绍 未来计划 1. OLAP及其分类 OLAP是一种让用户 ...
- Flink从入门到精通100篇(二十)-跨境电商 Shopee 的实时数仓之路
前言 本文讲述 Flink 在 Shopee 新加坡数据组 ( Shopee Singapore Data Team ) 的应用实践,主要内容包括: 实时数仓建设背景 Flink 在实时数据数仓建设中 ...
- Flink从入门到精通100篇(二十二)-微博基于Flink的机器学习实战项目
前言 微博作为国内比较主流的社交媒体平台,目前拥有2.22亿日活用户和5.16亿月活用户.如何为用户实时推荐优质内容,背后离不开微博的大规模机器学习平台.本文由微博机器学习研发中心高级算法工程师于茜老 ...
- Flink从入门到精通100篇(二十)-Zeppelin SDK在Flink 中的应用(附测试代码)
前言 用过 Zeppelin 的人应该比较熟悉 Zeppelin 的 UI,因为 Zeppelin 的主要使用场景都是交互式,用户需要手动来操作.那除了这种手动的方式,还有其他的方式吗?如果你不想用 ...
- Flink从入门到精通100篇(二十三)-Flink实战应用案例:如何清理过期的 Checkpoint 目录?
目录 Flink Checkpoint 目录的清除策略 生产环境应该选择哪种清除策略 生产环境必须定期脚本清理 Checkpoint 和 Savepoint 目录 RocksDB 增量 Checkpo ...
- Flink从入门到精通100篇(二十三)-Apache Flink在滴滴的应用与实践
前言 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态计算.可部署在各种集群环境,对各种大小的数据规模进行快速计算. 滴滴基于 Apache Flink 做了 ...
最新文章
- 首批 iPhone 13 用户直呼太“坑”:​拍照有马赛克、不能用高刷、还与 Apple Watch “失联”?...
- 看完这部缓存进化史,还不懂缓存,请给我差评
- psp进度(11月25号-31号)
- 国产岚图入局高端智能电动车,对标特斯拉,放话一年内量产
- ADO.NET编程小错误
- LWIP再探----内存池管理
- CRM Interactive Report的UI设计
- ulead gif animator_搞笑GIF趣图:这风看来很大啊,今天回不来家了7
- 7-6 红豆生南国 (25 分)
- 吐嘈OpenCV的图像旋转功能 _7
- 深入剖析Redis事件驱动
- .net 中的DllImport
- centos 基础命令第一节
- Qt - QVariant
- php mysql 博客_基于PHP+MySQL的个人博客系统
- java kryo_通过Kryo的序列化方式提升Netty性能
- 多因子系列(二):基于机器学习选股策略(附源码)
- 计算机毕业设计Java宠物爱心救助系统(源码+系统+mysql数据库+lw文档)
- Oracle_02查询函数
- 银河麒麟操作系统使用