0


Flink 内存梳理与遇到的问题修复

Flink内存相关文章


文章目录


Flink基础模型内存模型

提示:我们需要知道Jobmanager和Taskmanager对应的内存模型,来分配相应的内存,让内存利用率最大化(本文基于flink1.17说明)。 

一、JobManager内存模型:

参数设置:

  • jobmanager.memory.process.size:对应到图中的 Total Process Memory 。对应到 -yjm。
  • jobmanager.memory.flink.size:对应到图中的Total Flink Memory,作业管理器的总Flink内存大小。这包括JobManager消耗的所有内存,除了JVM元空间和JVM开销,它由JVM堆内存和堆外内存组成。
  • jobmanager.memory.heap.size :对应到图中的JVM Head:JobManager的JVM堆内存大小。
  • jobmanager.memory.off-heap.size:默认值:128mb,对应到图中的Off-Heap Memory。JobManager的堆外内存。
  • jobmanager.memory.jvm-metaspace.size:默认值:256mb ,对应到图中的JVM Metaspace。- JobManager JVM 进程的 Metaspace。
  • JVM Overhead,是用于其他 JVM 开销的本地内存,例如栈空间、垃圾回收空间等,JVM开销的大小是为了弥补总进程内存中配置的部分。- jobmanager.memory.jvm-overhead.fraction:默认值 0.1(Total Process Memory的0.1)。- jobmanager.memory.jvm-overhead.min:默认值192mb- jobmanager.memory.jvm-overhead.max:默认值1gb- 按照比例算,如果内存大小小于或大于配置的最小或最大大小,则将使用最小或最大大小。可以通过将最小和最大大小设置为相同的值,可以显式指定JVM开销的确切大小。

举例:
那么如果设置了 -yjm 1024 ,JobManager的JVM的堆内存大小是多少呢?
可以看到默认值
也可以在配置或运行日志中看到

二、TaskManager的内存模型

标签: flink 大数据

本文转载自: https://blog.csdn.net/qq_27627985/article/details/136836440
版权归原作者 工作中的程序员 所有, 如有侵权,请联系我们删除。

“Flink 内存梳理与遇到的问题修复”的评论:

还没有评论