栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Flink(八):Flink 进程内存、总内存内存简介

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Flink(八):Flink 进程内存、总内存内存简介

一、简介

        Apache Flink 是一个分布式系统,它需要计算资源来执行应用程序。Flink 集成了所有常见的集群资源管理器,例如Hadoop YARN、Apache Mesos和Kubernetes, Apache Flink 也是基于 JVM 的高效处理能力,我们需对各组件内存的了解,更好的使用内存。

二、Flink  进程内存模型简介

            Flink JVM 进程总内存(Total Process Memory):包含了由 Flink 应用使用的内存(Flink 总内存)以及由运行 Flink 的 JVM 使用的内存。

           Flink 总内存(Total Flink Memory):包括 JVM 堆内存(Heap Memory)和堆外内存(Off-Heap Memory)。 其中堆外内存包括直接内存(Direct Memory)和本地内存(Native Memory)。


 

三、Flink  进程内存、总内存简介

1、TaskManager、JobManager参数设置   

  配置项    TaskManager 配置参数    JobManager 配置参数  
Flink 总内存taskmanager.memory.flink.sizejobmanager.memory.flink.size
进程总内存taskmanager.memory.process.sizejobmanager.memory.process.size

2、Total Flink Memory、Total Process Memory选择简介

     1)独立部署模式(Standalone Deployment):

              建议采用Total Flink Memory类型,我们通常更关注 Flink 应用本身使用的内存大小,如果出现内存溢出,直接调整总内存 大小                  

     2) 容器(Container)部署模式:

                建议采用Total Process Memory类型, 在容器化部署模式(Kubernetes、Yarn 或 Mesos)下,配置进程总内存(taskmanager.memory.process.size或者jobmanager.memory.process.size),相当于申请的容器(Container)大小。如果配置了 Flink 总内存,Flink 会自动加上 JVM 相关的内存部分,根据推算出的进程总内存大小申请容器。

        注意: 如果 Flink 或者用户代码分配超过容器大小的非托管的堆外(本地)内存,部署环境可能会杀掉超用内存的容器,造成作业执行失败。

3、注意

      不建议同时设置进程总内存和 Flink 总内存。 这可能会造成内存配置冲突,从而导致部署失败。 额外配置其他内存部分时,同样需要注意可能产生的配置冲突。

通过设置 Flink 总内存的特定内部组成部分的方式来进行内存配置。参考TaskManager 和 JobManager ,Flink(九):JobManager 内存简介_zhengcongyi的博客-CSDN博客

Flink(十):TaskManager 内存简介_zhengcongyi的博客-CSDN博客

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/781708.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号