YARN源代码解读
来源:互联网 发布:零壹乐队 知乎 编辑:程序博客网 时间:2024/05/20 20:19
YARN源代码解读
今天开了个坑
目标:能够灵活应用Hadoop平台,利用其实现各种数据的处理
RPC是分布式系统的核心:序列化层(Protobuf/Avro/Writable)/函数调用层(反射/动态代理)/网络传输层(Socket)/服务器端处理架构(网络I/O模型)
请求/应答 同步/异步
RMI
1)客户程序以本地方式调用系统产生的 Stub 程序;
2)该 Stub 程序将函数调用信息按照网络通信模块的要求封装成消息包,并交给通信
模块发送到远程服务器端。
3)远程服务器端接收此消息后,将此消息发送给相应的 Stub 程序;
4)Stub 程序拆封消息,形成被调过程要求的形式,并调用对应函数;(动态代理)
5)被调用函数按照所获参数执行,并将结果返回给 Stub 程序;
6)Stub 程序将此结果封装成消息,通过网络通信模块逐级地传送给客户程序
相关类org.apache.hadoop.ipc.RPC:
public static Server RPC.Builder (Configuration).build() :
public static <T> ProtocolProxy <T> getProxy/waitForProxy(...) :
Hadoop RPC:
VersionedProtocol
定义
实现
server
client?为什么传入的参数是interface
RPC.setProtocolEngine是为了改变序列化方法
org.apache.hadoop.ipc.Client
org.apache.hadoop.ipc.Server
0 0
- YARN源代码解读
- YARN核心部件解读
- 解读spring源代码心得
- prototype1.3.1源代码解读
- prototype1.3.1源代码解读
- prototype1.3.1源代码解读
- prototype1.3.1源代码解读
- prototype1.5.1源代码解读
- Joomla! 1.5 源代码解读
- 解读spring源代码心得
- Flume源代码解读一
- Flume源代码解读二
- Flume源代码解读三
- Flume源代码解读四
- Flume源代码解读五
- nginx源代码解读之一
- tomcat源代码解读
- Tinyhttpd服务器源代码解读
- CodeForces 604 B.More Cowbell(贪心)
- android-ExpandableListView的使用
- 路径规划(京东2016实习生真题)
- Spring学习总结——Spring实现AOP的多种方式
- faster rcnn训练自己的数据集demo和训练过程error总结
- YARN源代码解读
- PHP 模块生命周期
- session_set_cookie_params()
- 动态规划入门-Triangle
- Android开发之自定义圆形的ImageView的实现
- 题目1177:查找
- 手机CNN网络模型--MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications
- 电子邮件相关_邮件传输协议简单了解
- 日常杂七杂八的学习笔记