Flink 1.13 内存模型及配置方法

Flink 1.13 内存模型及配置方法,第1张

Flink 1.13 内存模型及配置方法

目录
  • 概览
  • Total process Memory
  • Detail & Config
  • JVM params

概览

Since 1.10 TM 做了重大更新。
Since 1.11 JM 内存模型做了重大更新。

本文主要讲解 TM 内存模型。
官网链接 https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/deployment/memory/mem_setup_tm/

Total process Memory
先理解一下官网的这张图
total process memory(tpm) = total flink memory(tfm) + jvm memory
tfm = JVM heap + Off-Heap Momory
Off-Heap Momory = Managed Memory + Driect Memory

配置 Flink 进程内存最简单的方法是指定以下两个配置项中的任意一个:

配置参数:
|-----------------------------------------------------------------------------------|
|配置项  	    |TaskManager 配置参数  	  			|JobManager 配置参数  			|
|Flink 总内存	|taskmanager.memory.flink.size		|jobmanager.memory.flink.size	|
|进程总内存		|taskmanager.memory.process.size	|jobmanager.memory.process.size	|
|-----------------------------------------------------------------------------------|

Detail & Config
//TODO 

JVM params JVM 参数TaskManager 取值JobManager 取值-Xmx 和 -Xms框架堆内存 + 任务堆内存JVM 堆内存 (*)-XX:MaxDirectMemorySize(TaskManager 始终设置,JobManager 见注释)框架堆外内存 + 任务堆外内存(**) + 网络内存堆外内存 (**) (**)-XX:MaxmetaspaceSizeJVM metaspaceJVM metaspace(*) 请记住,根据所使用的 GC 算法,你可能无法使用到全部堆内存。一些 GC 算法会为它们自身分配一定量的堆内存。这会导致堆的指标返回一个不同的最大值。(**) 请注意,堆外内存也包括了用户代码使用的本地内存(非直接内存)。(***) 只有在 jobmanager.memory.enable-jvm-direct-memory-limit 设置为 true 时,JobManager 才会设置 JVM 直接内存限制。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5688207.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存