hadoop3.0.0 源码阅读之一:IPC Client部分

本文介绍了Hadoop RPC的基础概念,特性,以及在Hadoop中的作用。Hadoop RPC基于C/S模式,采用动态代理、反射、序列化和NIO技术实现,提供了高性能的透明远程调用。RPC在Hadoop中扮演关键角色,用于Namenode与Datanode、Jobtracker与Tasktracker等进程间的交互。客户端调用流程涉及动态代理和非阻塞异步IO。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前一直在看Hadoop源代码,接下来打算好好的总结一下,先占一个坑,先把之前注释的代码发出来。如有不对,请大家指正。

一、RPC基础概念

1.1 RPC的基础概念

RPC,即Remote Procdure Call,中文名:远程过程调用

  (1)它允许一台计算机程序远程调用另外一台计算机的子程序,而不用去关心底层的网络通信细节,对我们来说是透明的。因此,它经常用于分布式网络通信中。

RPC协议假定某些传输协议的存在,如TCPUDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。

  (2Hadoop的进程间交互都是通过RPC来进行的,比如NamenodeDatanode直接,JobtrackerTasktracker之间等。

因此,可以说Hadoop的运行就是建立在RPC基础之上的

1.2 RPC的显著特点

  (1透明性:远程调用其他机器上的程序,对用户来说就像是调用本地方法一样;

  (2)高性能:RPC Server能够并发处理多个来自Client的请求;

  (3)可控性:jdk中已经提供了一个RPC框架RMI,但是该PRC框架过于重量级并且可控之处比较少,所以Hadoop RPC实现了自定义的PRC框架。

 

   (1RPC采用了C/S的模式;

  (2Client端发送一个带有参数的请求信息到Server

  (3Server接收到这个请求以后,根据发送过来的参数调用相应的程序,然后把自己计算好的结果发送给Client端;

  (4Client

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值