《Hadoop技术内幕》学习笔记——RPC和动态代理
来源:互联网 发布:集团合并报表软件 编辑:程序博客网 时间:2024/06/10 16:24
本文是《hadoop技术内幕——深入解析Hadoop Common和HDFS架构设计与实现原理》第4章的1-3节的学习笔记。内容为Hadoop IPC部分的基础知识介绍。
知识框架
由于Hadoop分布式环境需要一个更高效和正对性优化的IPC机制,传统的诸如RMI的解决方案无法满足这一要求,Hadoop自己实现了一套IPC方法。
第4章第1节讲解了RPC的原理,包括Stub-Skeleton的架构等,进而用RMI
举例(可以参考的演示代码)。RMI的调用实现主要包括了服务器端的registry和客户端的lookup。虽然Hadoop不是使用RMI做IPC,但了解一下其调用方式对感性的认识到如何进行分布式环境下的远程调用还是有作用的。
接下来的2,3小节,简单的介绍了IPC过程所依赖的技术方法:Java的动态代理方式和NIO的网络传输方式。
第2节讲动态代理
,这里需要理解面向对象的代理模式和*动态*的原因。代理模式分很多种,这里用到的是简单的对行为的传递。动态代理的动态特性,则是因为框架能提供动态创建某个接口的实现的能力(可以参考的演示代码)。
更系统的看动态代理过程,分为两个阶段:
- 1.代理接口的实现:静态方法Proxy.newInstance()生成动态对象。
- 2.调用转发过程:InvocationHandler实现
第3节的NIO
,跟传统的套接字(Socket)通信过程做了对比。需要了解Socket通信的特点:同步,阻塞,基于字节,理解这种特点带来的服务器端的线程闲置的压力。对应的,NIO则是可异步的,非阻塞的,基于块的。具体的实现上,需要了解缓冲区(Buffer)的原理和使用方式,通道(Channel)和选择器(Selector)配合的使用方式。
我总结了一份slides,挂载dropbox里:请戳
PS:欢迎光临我的新博客 http://biaobiaoqi.me
- 《Hadoop技术内幕》学习笔记——RPC和动态代理
- java动态代理,结合hadoop技术内幕中的例子
- [HBase] Hadoop RPC 动态代理
- Hadoop学习笔记—3.Hadoop RPC机制的使用
- Hadoop学习笔记—3.Hadoop RPC机制的使用
- Hadoop学习笔记—3.Hadoop RPC机制的使用
- COM学习笔记五《COM技术内幕》§5 —— 动态链接
- 《Spring技术内幕》学习笔记8——创建AOP代理对象并对目标对象切面拦截
- 《Spring技术内幕》学习笔记8——创建AOP代理对象并对目标对象切面拦截
- 《Spring技术内幕》学习笔记8——创建AOP代理对象并对目标对象切面拦截
- Hadoop RPC热身之Java 动态代理
- Hadoop技术内幕之RPC框架解析(上)
- Hadoop技术内幕之RPC框架解析(下)
- COM学习笔记六《COM技术内幕》§6 —— HRESULT、GUID和注册表
- 《Spring技术内幕》学习笔记14——Spring读取和处理事务配置
- 《Spring技术内幕》学习笔记14——Spring读取和处理事务配置
- 《Spring技术内幕》学习笔记14——Spring读取和处理事务配置
- 静态代理和动态代理学习笔记
- PHP socket
- 成功attack了某位童鞋的网站
- Windows-核心编程-04-进程-获取进程 线程 模块(DLL)信息
- python多线程图片爬虫
- 用hadoop写了个简单的并行爬虫
- 《Hadoop技术内幕》学习笔记——RPC和动态代理
- V$database checkpoint,v$datafile checkpoint,v$datafile_header checkpoint
- dsfsf
- 黑马程序员 JAVA基础<二> 面向对象之封装 继承 多态
- 杭电2081
- VS2012 单元测试步骤 c++
- 帧布局(FrameLayout)的简单使用
- 黑马程序员 JAVA基础<三> 多线程
- uestc oj 1510 Weights and Measures