gRPC接口类型

gRPC有4种接口类型:

  • Unary RPC (一元RPC)
  • Server Streaming RPC ( 服务器流式RPC)
  • Client Streaming RPC ( 客户端流式RPC)
  • Bidirectional Streaming RPC (双向流式RPC)
    对于底层的HTTP/2而言,这些都是数据流Steam,我们所说的接口类型是指进行一次gRPC调用的数据通讯流程(或数据流Stream的生命周期)。

1. Unary RPC

最简单的RPC类型,客户端发送单个请求并返回单个响应


 
image.png

2. Server Streaming RPC

服务器流式RPC类似于我们的简单示例,只是服务器可以返回多个响应信息。一旦客户端拥有所有服务器的响应,客户端就会完成。


 
image.png

3. Client Steaming RPC

客户端流式RPC也类似于我们的简单示例,只是客户端向服务器发送请求流而不是单个请求。服务器发送回单个响应。


 
image.png

4. Bidirectional Streaming RPC

在双向流式RPC中,客户端和服务器可以按任何顺序独立的读写数据流。服务器可以在收到所有的请求信息后再返回响应信息,或者收到一个请求信息返回一个响应信息,或者收到一些请求信息再返回一些请求信息,等等都是可以的。


 
image.png


作者:butters001
链接:https://www.jianshu.com/p/88b601121ac5
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
原文地址:https://www.cnblogs.com/gao88/p/12010904.html