回到CoarseGrainedExecutorBackend端,在接收到RegisteredExecutor消息后,创建executor对象,创建完毕的Executord对象,用于之后执行Driver分配Taskexecutor的启动,调用fetchAndRunExecutor方法,创建ProcessBuilder,用于执行命令启动CoarseGrainedExecutorBackend。
看看CoarseGrainedExecutorBackend

main方法是一切函数入口:

run方法
看一下run方法
run方法位于CoarseGrainedExecutorBackend的伴生对象中,方法中做了如下操作


在run方法中,创建了CoarseGrainedExecutorBackend实例,并注册到自身的Executor Env的rpcEnv中,在注册到RpcEnv的过程中会触发CoarseGrainedExecutorBackend的onStart方法,执行该方法,onStart方法中,向driver发送了RegisterExecutor消息,即向CoarseGrainedSchedulerBackend发送RegisterExecutor消息

到CoarseGrainedSchedulerBackend端,接受到消息后,做出如下处理:

回到CoarseGrainedExecutorBackend端,在接收到RegisteredExecutor消息后,创建executor对象,创建完毕的Executord对象,用于之后执行Driver分配Task

CoarseGrainedExecutorBackend的启动部分完结 - -
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31509949/viewspace-3154223/ ,如需转载,请注明出处,否则将追究法律责任。