https://blog.csdn.net/zkp_java/article/details/81879577

RPC基本原理

大部分的RPC框架都遵循如下三个开发步骤:

Thrift使用入门---RPC服务-LMLPHP

RPC通信过程如下图所示

Thrift使用入门---RPC服务-LMLPHP

通信过程包括以下几个步骤:

Thrift使用入门---RPC服务-LMLPHP

图中Code是用户实现的业务逻辑,接下来的Service.Client和.write()/read()是thrift根据IDL生成的客户端和服务端的代码,对应于RPC中Client stub和Server stub。TProtocol 用来对数据进行序列化与反序列化,具体方法包括二进制,JSON 或者 Apache Thrift 定义的格式。TTransport 提供数据传输功能,使用 Apache Thrift 可以方便地定义一个服务并选择不同的传输协议。
如下图所示为thrift的网络栈结构  
Thrift使用入门---RPC服务-LMLPHP

Thrift使用入门---RPC服务-LMLPHP

Thrift使用入门---RPC服务-LMLPHP

代码: https://blog.csdn.net/zkp_java/article/details/81879577

05-28 17:23