2.概述
相比于 TaskExecutor
和 ResourceManager
, JobManager
中资源管理的部分可能要相对更为复杂一下,这主要是由于 Flink 允许通过 SlotSharingGroup
和 CoLocationGroup
约束使得多个子任务在相同的的 slot 中运行。在 JobMaster
中,主要通过 SlotPool
和 ResourceManager
及 TaskExecutor
进行通信,并管理分配给当前 JobMaster
的 slot;而具体到当前 Job 的所有子任务的调度和资源分配,则主要依赖 Scheduler
和 SlotSharingManager
。
3. PhysicalSlot
PhysicalSlot
表征的是物理意义上 TaskExecutor
上的一个 slot。
PhysicalSlot
接口唯一的实现类是 AllocatedSlot
: