gRPC的工作原理是什么
gRPC是一个开源的高性能RPC框架,基于HTTP/2协议标准,使用ProtoBuf作为序列化协议,支持多种语言(Golang、Java、C++、Python、Ruby、Node.js、PHP、C#、Objective-C、Android、iOS)。
gRPC使用HTTP/2协议标准,在底层使用了高性能的二进制分帧来传输数据,并且使用了多路复用技术,可以在一个TCP连接上进行多个RPC调用,大大提高了网络传输效率。
gRPC使用ProtoBuf作为序列化协议,可以很好的支持多种编程语言,并且ProtoBuf的序列化效率比JSON要高很多。
gRPC支持两种类型的RPC调用:
同步调用:客户端发送一个请求给服务端,服务端进行处理并返回一个响应给客户端,客户端等待服务端的响应。
异步调用:客户端发送一个请求给服务端,服务端进行处理并返回一个响应给客户端,客户端不等待服务端的响应,可以继续发送其他请求。
相关文章