有Process Memory、Task Heap Memory、Task Off-Heap Memory、Netork Memory 等等。
TaskManager 也对它们的配置进行了分层的管理,最外层是 Process Memory,对应的是整个 TaskExecutor JVM 的总资源。这份内存又包含了 JVM 自身占有的内存以及 Flink 占有内存。而 Flink 占用内存又包含了框架占有的内存和任务的内存。
任务占用内存包括了 Task Heap Memory,即任务的 Java 对象占有的内存;Task Off-Heap Memory 一般用于 native 的第三方库;Network Memory 是用来创建Network Buffer 用来服务于任务的输入和输出; Managed Memory 则是受管控的Off-Heap Memory,它会被一些组件用到,比如算子和 StateBackend。这些 Task资源会被它分成一个一个的 Slot,Slot 是任务运行的逻辑容器。当前,Slot 大小是直接把 整个 TasExecutor 的资源,按照 Slot 的数量进行均分得到的。
资料来源:《Apache Flink 必知必会》,下载链接:https://developer.aliyun.com/topic/download?id=1189
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。