【发布时间】:2021-04-30 09:14:04
【问题描述】:
我是 gRPC 和 protobuf 的新手。
我注意到 gRPC 在定义服务时使用关键字stream 作为参数的归档规则。
但是,我在 Protobuf 的documents 中找不到任何stream 的定义。
gRPC 如何使用stream 作为归档规则?
【问题讨论】:
标签: protocol-buffers grpc
我是 gRPC 和 protobuf 的新手。
我注意到 gRPC 在定义服务时使用关键字stream 作为参数的归档规则。
但是,我在 Protobuf 的documents 中找不到任何stream 的定义。
gRPC 如何使用stream 作为归档规则?
【问题讨论】:
标签: protocol-buffers grpc
stream 概念特定于 gRPC,并在 gRPC 的 core concepts 文档中进行了介绍;简短的版本是:
rpc Unary(RequestType) returns (ResponseType);
rpc ServerStreaming(RequestType) returns (stream ResponseType);
rpc ClientStreaming(stream RequestType) returns (ResponseType);
rpc Duplex(stream RequestType) returns (stream ResponseType);
// nomenclature: duplex === bidirectional streaming
【讨论】:
stream 是 gRPC 特有的,stream 修改的参数如何被“翻译”成常规的 .proto 文件?
stream 关键字”,那么是的,这可能是一个公平的批评;我只能说“请参阅 gRPC 文档”