您当前的位置: 首页 > 

段智华

暂无认证

  • 0浏览

    0关注

    1232博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

第37课 : Task执行内幕与结果处理解密

段智华 发布时间:2017-06-03 07:21:18 ,浏览量:0

第37课 :  Task执行内幕与结果处理解密

Task执行及结果处理原理流程图和源码解密:

在Standalone模式中,Driver中的CoarseGrainedSchedulerBackend给CoarseGrainedExecutorBackend发送launchTasks消息,CoarseGrainedExecutorBackend收到launchTasks消息以后会调用executor.launchTask。

CoarseGrainedExecutorBackend的receive方法如下,模式匹配收到LaunchTask消息:

1.         override def receive:PartialFunction[Any, Unit] = {

2.         ……

3.          case LaunchTask(data) =>

4.               if (executor == null) {

5.                 exitExecutor(1, "ReceivedLaunchTask command but executor was null")

6.               } else {

7.                 val taskDesc =ser.deserialize[TaskDescription](data.value)

8.                 logInfo("Got assigned task "+ taskDesc.taskId)

9.                 executor.launchTask(this, taskId =taskDesc.taskId, attemptNumber = taskDesc.attemptNumber

关注
打赏
1659361485
查看更多评论
立即登录/注册

微信扫码登录

0.0684s