interview_bak

flink内存管理

JVM 存在的几个问题:

  • Java 对象存储密度低。一个只包含 boolean 属性的对象占用了16个字节内存:对象头占了8个,boolean 属性占了1个,对齐填充占了7个。而实际上只需要一个bit(1/8字节)就够了。
  • Full GC 会极大地影响性能,尤其是为了处理更大数据而开了很大内存空间的JVM来说,GC 会达到秒级甚至分钟级。
  • OOM 问题影响稳定性。OutOfMemoryError是分布式计算框架经常会遇到的问题,当JVM中所有对象大小超过分配给JVM的内存大小时,就会发生OutOfMemoryError错误,导致JVM崩溃,分布式框架的健壮性和性能都会受到影响。

flink内存管理针对实时场景做了哪些优化

积极的堆外内存管理,因为流处理注重低延迟,为每一条要处理的数据在堆内存上创建对象会触发频繁的gc,导致处理停滞

  • flink在堆外开辟network buffer(专门存放缓冲数据)
  • 开辟managed memory,用于排序,缓存中间值

在这里插入图片描述

怎么定位背压

flink拓扑图,Flink的下游算子无法及时处理上游的消息时会出现反压的提示。反压提示一般有OK,LOW,HIGH三种状态。某个算子的BackPressure指标如果是HIGH,说明后面的算子存在性能问题。在任务性能调优时,对于串在一

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-11 20:26:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-11 20:26:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-11 20:26:04       87 阅读
  4. Python语言-面向对象

    2024-05-11 20:26:04       96 阅读

热门阅读

  1. Unity 委托与事件、装箱和拆箱

    2024-05-11 20:26:04       32 阅读
  2. React 学习-5

    2024-05-11 20:26:04       35 阅读
  3. 6.5.Docker数据管理和端口映射应用

    2024-05-11 20:26:04       24 阅读
  4. 算法练习17——罗马数字转整数

    2024-05-11 20:26:04       29 阅读
  5. debian apt 更改阿里源

    2024-05-11 20:26:04       23 阅读
  6. android原生开发学习路线

    2024-05-11 20:26:04       30 阅读
  7. 算法详解——穷举法

    2024-05-11 20:26:04       26 阅读
  8. mysql5.x 的某些神奇问题

    2024-05-11 20:26:04       32 阅读