373得票4回答
为什么在Protocol Buffers 3中移除了required和optional?

最近我在使用gRPC和proto3,发现新语法中已经移除了required和optional。 请问为什么proto3移除了这些限制?这些约束似乎是为了使定义更加健壮必须的。 syntax proto2:message SearchRequest { required string q...

228得票3回答
我能定义一个空的 gRPC 请求或响应吗?

在proto3中,rpc语法是否允许请求或响应为空值? 例如,我想要以下内容的等效方式:rpc Logout; rpc Status returns (Status); rpc Log (LogData); 还是应该创建一个空类型?message Null {}; rpc Logout (N...

203得票6回答
Protobuf与gRPC的比较

我试图理解protobuf和gRPC以及如何同时使用它们。您能帮助我理解以下内容吗: 考虑OSI模型,例如,Protobuf在哪一层? 通过消息传输思考"流程",gRPC在做什么,而protobuf则缺少了什么? 如果发送方使用protobuf,服务器可以使用gRPC吗?...

144得票3回答
gRPC(HTTP/2)比使用HTTP/2的REST更快吗?

目标是引入一种运输和应用层协议,其延迟和网络吞吐量更好。目前,该应用使用REST与HTTP/1.1,我们遇到了高延迟问题。我需要解决这个延迟问题,并且我可以使用gRPC(HTTP/2)或REST/HTTP2其中任何一种。 HTTP/2: 多路复用 单个TCP连接 二进制而非文本 头部压缩...

137得票2回答
grpc和websocket有什么区别?哪一个更适合双向流连接?

我想以双向流式传输的方式开发一个客户端 - 服务器应用程序。 grpc或websocket哪种技术更适合实现这个需求?

113得票6回答
GRPC与REST有何不同?

我正在阅读这篇GRPC解释,这个图表很有趣: 传输层是如何工作的?如果它是通过网络...为什么叫做RPC呢?更重要的是,这与实现服务层API(客户端类中具有进行HTTP请求的方法)的REST有何不同?

96得票8回答
测试 gRPC 服务

我想测试一个用Go编写的gRPC服务。我使用的例子是来自grpc-go repo的Hello World服务器示例。 protobuf定义如下:syntax = "proto3"; package helloworld; // The greeting service definitio...

88得票19回答
错误 "protoc-gen-go: 程序未找到或不可执行"

我正在尝试使用Go的gRPC构建一个示例应用程序,但是我无法使用"protoc"生成代码。 我已经安装了所需的库和Go包,使用以下命令: go get -u google.golang.org/grpc go get -u github.com/golang/protob...

84得票8回答
如何将gRPC定义的API带到Web浏览器中

我们希望为我们的gRPC微服务构建一个JavaScript/HTML GUI界面。由于gRPC不支持浏览器端,我们考虑使用WebSockets连接到一个node.js服务器,该服务器通过grpc调用目标服务。 我们很难找到一个优雅的解决方案。特别是,因为我们使用gRPC流在微服务之间推送事件...

75得票7回答
使用pip安装grpcio失败

我在使用pip install grpcio安装grpcio时,在Windows机器上遇到了错误。 我在这里读到https://github.com/grpc/grpc/issues/17829,可能是由于setuptools版本错误造成的。 我将我的setuptools升级到最新版本即41....