flink架构

flink共有四大组件:JobManager,ResourceManager、Dispatcher和TaskManager

1.JobManager

JobManager控制单个应用的执行,每个应用都会有一个JobGraph(逻辑DataFlow),一个胖Jar,JobManager把JobGraph转换成名为ExecutionGraph(物理DataFlow),JobManager从ResourceManager申请资源slot,申请到资源后,就会将ExecutionGraph中的任务分发给TaskManager执行,JobManager还要负责所有需要集中协调的操作,比如创建检查点

2.ResourceManager

ResourceManager负责管理flink的处理资源单元slot,将slot提供给JobManager还负责终止空闲的TaskManager以释放计算资源

3.TaskManager

TaskManager是flink的工作进程,通常有多个,每个TaskManager提供一定数量的slot,slot限制了一个TaskManager可执行的任务数,TaskManager启动后,会向ResourceManager注册他的slot,收到resourceManager的指示时,TaskManager会向JobManager提供一个或多个slot,之后JobManager向slot分配任务

4.Dispatcher

Dispatcher跨多个作业运行,它提供一个REST接口来让我妈提交需要执行的应用,一旦某个应用提交,Dispatcher启动一个Jobmanager并将应用交给他,Dispatcher还会启动一个web UI,用来提供有关作业执行的信息

原文地址:https://www.cnblogs.com/wangbin2188/p/14583349.html