Flink内存配置和优化

在 Apache Flink 1.18 的 Standalone 集群中,内存设置是一个关键配置,它直接影响集群的性能和稳定性。

Flink 的内存配置主要包括 JobManager 和 TaskManager 的内存分配。

以下是如何在 Standalone 模式下配置内存的详细说明。

  1. JobManager 内存配置
    JobManager 是 Flink 集群的主节点,负责协调任务调度和资源管理。它的内存配置可以通过以下参数进行调整:

配置项(conf/flink-conf.yaml)

复制代码
#JobManager 的总内存大小
jobmanager.memory.process.size: 3072m

# JobManager 的 JVM 堆内存大小
jobmanager.memory.heap.size: 1536m

# JobManager 的 JVM 堆外内存大小(可选)
jobmanager.memory.off-heap.size: 256m

# JobManager 的 JVM 直接内存大小(可选)
jobmanager.memory.jvm-overhead.min: 256m
jobmanager.memory.jvm-overhead.max: 1024m

JobManager 内存说明:

jobmanager.memory.process.size:设置 JobManager 的总内存大小,包括堆内存和堆外内存。

jobmanager.memory.heap.size:设置JobManager 的 JVM 堆内存大小。

jobmanager.memory.off-heap.size:设置 JobManager 的堆外内存大小(可选)。

jobmanager.memory.jvm-overhead:设置 JVM 开销内存(用于线程栈、元数据等)。

  1. TaskManager 内存配置
    TaskManager 是 Flink 集群的工作节点,负责执行具体的任务。它的内存配置更为复杂,通常需要根据任务的需求进行调整。

配置项(conf/flink-conf.yaml)

复制代码
# TaskManager 的总内存大小
taskmanager.memory.process.size: 22528m

# TaskManager 的 JVM 堆内存大小
taskmanager.memory.task.heap.size: 15360m

# TaskManager 的堆外内存大小(用于网络缓冲、状态后端等)
taskmanager.memory.task.off-heap.size: 1024m

# TaskManager 的托管内存大小(用于 RocksDB 状态后端等)
taskmanager.memory.managed.size: 1024m

# TaskManager 的 JVM 开销内存
taskmanager.memory.jvm-overhead.min: 1024m
taskmanager.memory.jvm-overhead.max: 5120m

# TaskManager 的网络内存大小(用于网络数据传输)
taskmanager.memory.network.min: 64m
taskmanager.memory.network.max: 256m

TaskManager 内存说明:

taskmanager.memory.process.size:设置 TaskManager 的总内存大小。

taskmanager.memory.task.heap.size:设置 TaskManager 的 JVM 堆内存大小。

taskmanager.memory.task.off-heap.size:设置 TaskManager 的堆外内存大小(用于网络缓冲、状态后端等)。

taskmanager.memory.managed.size:设置托管内存大小(用于 RocksDB 状态后端等)。

taskmanager.memory.jvm-overhead:设置 JVM 开销内存(用于线程栈、元数据等)。

taskmanager.memory.network:设置网络内存大小(用于网络数据传输)。

相关推荐
郭泽元38 分钟前
递归树形菜单:优雅处理层级数据的利器
大数据
viperrrrrrrrrr738 分钟前
大数据学习(130)-zookeeper
大数据·学习·zookeeper
火龙谷1 小时前
【hadoop】Flink安装部署
flink
火龙谷2 小时前
【hadoop】Davinci数据可视化工具的安装部署
大数据·hadoop·分布式
国际云2 小时前
腾讯云国际版和国内版账户通用吗?一样吗?为什么?
大数据·运维·阿里云·云计算
£菜鸟也有梦2 小时前
从0到1,带你走进Flink的世界
大数据·hadoop·flink·spark
Data-Miner3 小时前
可编辑PPT | 基于大数据中台新能源智能汽车应用解决方案汽车大数据分析与应用解决方案
大数据·汽车
武子康4 小时前
Java-39 深入浅出 Spring - AOP切面增强 核心概念 通知类型 XML+注解方式 附代码
xml·java·大数据·开发语言·后端·spring
G皮T4 小时前
【Elasticsearch】Elasticsearch 核心技术(二):映射
大数据·elasticsearch·映射·搜索·动态映射·mappings
隰有游龙10 小时前
hadoop集群启动没有datanode解决
大数据·hadoop·分布式