liuqiker
2016-05-25 08:12关于hadoop 2.6源码中ApplicationClientProtocol的问题
1请教大神一个问题
Hadoop 2.6中,Client端提交JOB到RM端,他们是通过ApplicationClientProtocol通信的。
在RM端有RMClientService.java作为服务端接收请求并相应,代码是rpc.getServer(ApplicationClientProtocol.class...),可以看出服务端对应的协议是ApplicationClientProtocol。
在Client端有ApplicationClientProtocolPBClientImpl.java作为客户端提交请求,代码是RPC.getProxy(ApplicationClientProtocolPB.class...),可以看出Client端的协议是ApplicationClientProtocolPB。
而ApplicationClientProtocolPB继承了ApplicationClientProtocolService.BlockingInterface,这是GOOGLE的protoBuf的内容。
这能代表ApplicationClientProtocolPB等同于ApplicationClientProtocol吗?服务端和客户端一个是ApplicationClientProtocolPB.class,一个是ApplicationClientProtocol.class为什么可以正常通信?
为什么不在服务端直接写成rpc.getServer(ApplicationClientProtocolPB.class...)呢?
还有ApplicationClientProtocolPBServiceImpl.java是干什么用的呢?
- 点赞
- 回答
- 收藏
- 复制链接分享
1条回答
为你推荐
- hadoop 运行本地jar包无法读取文件。
- hadoop
- 2个回答
- hadoop简单问题,如何在spring boot中,同时使用这4个jar,能够正常运行
- gradle
- spring
- java
- hadoop
- 3个回答
- ubuntu 安装hadoop
- hadoop
- ubuntu
- 1个回答
- Hadoop2.7.3实现Kmeans算法遇到的问题
- 算法
- hadoop集群
- hadoop
- 2个回答
- hadoop中combine,partition和shuffle的疑问
- hadoop
- 2个回答
换一换