spark内核揭秘-13-Worker中Executor启动过程源码分析
spark内核揭秘-13-Worker中Executor启动过程源码分析
stark_summer 发表于3年前
spark内核揭秘-13-Worker中Executor启动过程源码分析
  • 发表于 3年前
  • 阅读 68
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: spark内核揭秘-13-Worker中Executor启动过程源码分析 spark内核揭秘-13-Worker中Executor启动过程源码分析 spark内核揭秘-13-Worker中Executor启动过程源码分析

进入Worker类源码:



可以看出Worker本身是Akka中的一个Actor。


进入Worker类的LaunchExecutor:



从源代码可以看出Worker节点上要分配CPU和Memory给新的Executor,首先需要创建一个ExecutorRunner:

ExecutorRunner是用于维护executor进程的:

1、进入ExecutorRunner 的start方法:


1.1、进入fetchAndRunExecutor()方法(核心方法):



2、进入 master ! ExecutorStateChanged(appId, execId, manager.state, None, None)方法:

发送消息给Master:



我们再回到到launchExecutor方法:



进入ExecutorAdded方法:


上面代码利用Akka 发送ExecutorStateChanged方法给Master

进入 Master 的ExecutorStateChanged方法:



PS:感觉代码分析的有点乱,不是很理想,希望大家知道,谢谢

进入Worker类的LaunchExecutor:



1、进入ExecutorRunner 的start方法:


2、进入fetchAndRunExecutor()方法:



共有 人打赏支持
粉丝 60
博文 75
码字总数 51050
×
stark_summer
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: