CoarseGrainedExecutorBackend是啥?
答:
CoarseGrainedExecutorBackend,粗粒度的ExecutorBackend进程。Worker为什么要启动另外一个进程?
Worker本身是管理当前机器上的资源,变动资源的时候向Master汇报。有很多应用程序,就需要很多Executor。这样程序之间不会一个奔溃导致所有的都奔溃。
1.在CoarseGrainedExecutorBackend启动时,向Driver注册Executor其实质是注册ExecutorBackend实例,和Executor实例之间没有直接的关系!!!
2.CoarseGrainedExecutorBackend是Executor运行所在的进程名称,Executor才是真正在处理Task的对象,Executor内部是通过线程池的方式来完成Task的计算的。
3. CoarseGrainedExecutorBackend和Executor是一一对应的。
4. CoarseGrainedExecutorBackend是一个消息通信体(其实现了ThreadSafeRpcEndpoint)。可以发送信息给Driver,并可以接收Driver中发过来的指令,例如启动Task等。
5.在Driver进程中,有两个至关重要的Endpoint,
a)第一个就是ClientEndpoint,主要负责向Master注册当前的程序;是AppClient的内部成员。
b)另外一个就是DriverEndpoint,这是整个程序运行时候的驱动器!!是CoarseGrainedExecutorBackend的内部成员。
6.在Driver中通过ExecutorData封装并注册ExecutorBackend的信息到Driver的内存数据结构ExecutorMapData中。ExecutorMapData是CoarseGrainedSchedulerBackend的成员。最终是注册给CoarseGrainedSchedulerBackend。








暂无数据