写点什么

Flink 提交作业运行的各种模式总结

用户头像
shengjk1
关注
发布于: 2021 年 03 月 23 日

0.背景


关于 Flink 的 Application Mode 自己还比较陌生,像 -d 等参数自己也不熟悉,决定好好总结一下,基于 Flink-1.12.x


1.Session Mode


这个不用多说,也就是起一个 session,然后会有多个程序提交到这一个 session 中。

好处:集群资源仅分配一次,充分利用资源,程序 App 启动较快

坏处:可能会连锁式的重启,jobManager 负载大


2.Per-Job Mode


使用的比较多,一个 application 一个 flink cluster

好处: 资源隔离,粒度更细,方便管理单个 job

坏处:当某个机器上有多个 client 时,会有较高的网络负载( 下载 jar 、传输 jar )以及消费大量的 CPU 来执行 main 方法


3.Application Mode


Application Mode 与 Per-Job Mode 类似,主要是为了解决 Per-Job Mode 的不足,通过 yarn.provided.lib.dirs

另外 client 是在 JobManager 上执行的,可以避免 带宽、CPU 的热点问题。

并且相比于 Per-Job Mode 来说,更强大,可以提交多个 job


4.总结


Application Mode 与 Per-Job Mode 类似,它主要是为了解决 Per-Job Mode 中由于 client 端导致的 带宽、CPU 问题

Session Mode

<h2 id="5">5.参考</h2>


https://ci.apache.org/projects/flink/flink-docs-release-1.12/deployment/#application-mode

https://ci.apache.org/projects/flink/flink-docs-stable/deployment/resource-providers/yarn.html


发布于: 2021 年 03 月 23 日阅读数: 8
用户头像

shengjk1

关注

还未添加个人签名 2018.04.26 加入

博客 https://blog.csdn.net/jsjsjs1789

评论

发布
暂无评论
Flink 提交作业运行的各种模式总结