RPC 介绍
RPC (Remote Procedure Call),远程过程调用
RPC 框架负责屏蔽底层的传输方式(TCP 或者 UDP)、序列化方式(XML/Json/ 二进制)和通信细节,服务调用者可以像调用本地接口一样调用远程服务。
RPC 框架
- gRPC:google、开源、多语言
- thrift:apache、facebook、开源、多语言
- Motan:新浪微博、java
- dubbo:阿里、支持服务治理等服务化特性的分布式服务框架
- jsonrpc4j:JSON-RPC
thrift 介绍
Thrift是一种接口描述语言(IDL)和二进制通讯协议,它被用来定义和创建跨语言的服务。
它被当作一个远程过程调用(RPC)框架来使用,是由 Facebook 为“大规模跨语言服务开发”而开发的,已开源。
thrift 协议栈结构
基本类型
thrift不支持无符号类型,因为很多编程语言不存在无符号类型
thrift |
java |
---|---|
bool |
boolean |
byte |
byte |
i16 |
short |
i32 |
int |