【问题标题】:The meaning and scenario of RPC streaming?RPC流的意义和场景?
【发布时间】:2019-10-13 12:39:13
【问题描述】:

我在grpc文档中看到了以下4种RPC

 - rpc SayHello(HelloRequest) returns (HelloResponse) {...}
 - rpc LotsOfReplies(HelloRequest) returns (stream HelloResponse) {...}
 - rpc LotsOfGreetings(stream HelloRequest) returns (HelloResponse) {...}
 - rpc BidiHello(stream HelloRequest) returns (stream HelloResponse) {...}

这意味着请求和响应都可以是单个消息或一系列消息。流请求是否意味着可以在流中打包多个调用的参数,实现批量远程过程调用?

而且,我对需要响应流的场景感到非常困惑。流式响应的场景是什么?

【问题讨论】:

    标签: rpc grpc


    【解决方案1】:

    有 4 种类型的 RPC:

    • 一元:客户端向服务器发送单个请求,服务器发送单个响应

    • 服务器流式传输:客户端向服务器发送一条消息。服务器以有序的消息序列进行响应。客户端从流中读取,直到没有更多消息为止。

    • 客户端流式传输:客户端向服务器发送有序的消息序列。服务器从客户端读取消息并发送响应。

    • 双向流式传输:客户端和服务器都向对方发送有序的消息序列。客户端和服务器流是相互独立的。

    查看https://grpc.io/docs/guides/concepts/ 了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-13
      相关资源
      最近更新 更多