文档章节

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

stark_summer
 stark_summer
发布于 2015/01/23 16:34
字数 250
阅读 73
收藏 1

进入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()方法:



© 著作权归作者所有

共有 人打赏支持
stark_summer
粉丝 59
博文 75
码字总数 51050
作品 0
朝阳
CEO
Apache Spark源码分析-- Job的提交与运行

本文以wordCount为例,详细说明spark创建和运行job的过程,重点是在进程及线程的创建。 实验环境搭建 在进行后续操作前,确保下列条件已满足。 1. 下载spark binary 0.9.1 2. 安装scala 3. ...

超人学院
2015/05/28
0
0
Spark及Spark Streaming核心原理及实践

  【IT168 技术】Spark 已经成为广告、报表以及推荐系统等大数据计算场景中首选系统,因效率高,易用以及通用性越来越得到大家的青睐,我自己最近半年在接触spark以及spark streaming之后,...

中国大数据
05/31
0
0
Spark核心原理 - 消息通信分析

Spark将通信层设计的非常巧妙,融合了各种设计/架构模式,将一个分布式集群系统的通信层细节完全屏蔽,这样在上层的计算框架的设计中能够获得很好的灵活性。同时,如果上层想要增加各种新的特...

oitebody
05/30
0
0
关于Spark 的一些调优选项(待完善)

各位看到的大侠们,,,,如果有什么问题,不要拍砖,后期进行完善。谢谢协助完善。 几个比较重要的配置属性: 1.手动启动集群 参数 含义 -i IP,--ip IP 要监听的IP地址或者 DNS 机器名 -p P...

Ryan-瑞恩
2015/08/28
0
3
Spark Core介绍以及架构

应用场景 Apache Spark 是加州大学伯克利分校的 AMP Labs 开发的开源分布式轻量级通用计算框架。由于 Spark 基于内存设计,使得它拥有比 Hadoop 更高的性能(极端情况下可以达到 100x),并且...

wsc449
01/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringCloud SpringBoot mybatis分布式Web应用的统一异常处理

我们在做Web应用的时候,请求处理过程中发生错误是非常常见的情况。Spring Boot提供了一个默认的映射:/error,当处理中抛出异常之后,会转到该请求中处理,并且该请求有一个全局的错误页面用...

itcloud
21分钟前
0
0
c++ std::bind和std::function

定义于头文件 <functional> std::bind 函数绑定,https://zh.cppreference.com/w/cpp/utility/functional/bind // bind 用例#include <iostream>#include <functional> // 自定义的一......

SibylY
23分钟前
0
0
SecureCRT的安装与破解(过程很详细!!!)

SecureCRT的安装与破解(过程很详细!!!) SecureCRT的安装与破解(过程很详细!!!) 使用SecureCRT可以方便用户在windows环境下对linux主机进行管理,这里为大家讲一下SecureCRT的破解方...

DemonsI
28分钟前
0
0
介绍几款可用的web应用防火墙

目前有两款,基于软件和基于应用程序的web应用防火墙。基于软件的产品布置在Web服务器上,而基于应用程序的产品放置在Web服务器和互联网接口之间。两种类型的防火墙都会在数据传入和传出web...

上树的熊
34分钟前
1
0
用Visual Studio开发以太坊智能合约

区块链和以太坊 自从我熟悉区块链、以太坊和智能合约以来,一直失眠。 我一直在阅读,阅读和阅读,最后我能够使用一些工具,他们建议使用以太坊网站官方客户端应用程序(Ethereum Wallet)也...

geek12345
36分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部