org.apache.hadoop.ipc.Client.Connection#sendRpcRequest
:
这个方法是客户端侧向服务端发送RPC请求的地方。调用点是Client#call方法过来的。
此方法代码注释里描述了一个细节:这个向服务端发送RPC请求数据的过程并不是由Connection线程发送的,而是其他的线程(sendParamsExecutor这个线程池)。文章来源:https://www.toymoban.com/news/detail-701451.html
sendRpcRequest方法的逻辑如下:
1、把参数Call序列化到一个buffer里。这个过程是caller线程做的;
2、提交发送序列化数据buffer到服务端的任务
3、调用get方法阻塞式等待发送RPC请求完成。文章来源地址https://www.toymoban.com/news/detail-701451.html
/** Initiates a rpc call by sending the rpc request to the remote server.
* Note: this is not called from the Connection thread, but by other
* threads.
* @param call - the rpc request
*/
public void sendRpcRequest(final Call call)
到了这里,关于【HDFS】Hadoop-RPC:客户端侧通过Client.Connection#sendRpcRequest方法发送RPC序列化数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!