Flink系统架构
3 月,跳不动了?>>> 原文链接: 一文弄懂Flink基础理论 Flink分布式程序包含2个主要的进程:JobManager和TaskManager.当程序运行时,不同的进程就会参与其中,包括Jobmanager、TaskManager和JobClient。 当 Flink 集群启动后,首先会启动一个 JobManger 和一个或多个的 TaskManager。由 Client 提交任务给 JobManager,JobManager 再调度任务到各个 TaskManager 去执行,然后 TaskManager 将心跳和统计信息汇报给 JobManager。TaskManager 之间以流的形式进行数据的传输。上述三者均为独立的 JVM 进程。 JobManager Master进程,负责Job的管理和资源的协调。包括任务调度,检查点管理,失败恢复等。 当然,对于集群HA模式,可以同时多个master进程,其中一个作为leader,其他作为standby。当leader失败时,会选出一个standby的master作为新的leader(通过zookeeper实现leader选举)。 JobManager包含了3个重要的组件: ###(1)Actor系统 Flink内部使用Akka模型作为JobManager和TaskManager之间的通信机制。