我试图了解 Protobuf 和 gRPC,以及如何使用它们。你能帮助我理解以下内容吗:
- 考虑到 OSI 型号,什么是在哪里,例如,在第4层的 Protobuf?
- 通过消息传输思考“流”是怎样的,什么是 gRPC 在做什么原型程序没有做的事情?
- 如果发送方使用 Protobuf,服务器是否可以使用 gRPC 或者 gRPC 添加只有 gRPC 客户端才能提供的内容?
- 如果 gRPC 可以使同步和异步通信成为可能,那么 Protobuf 只是用于编组,因此与 state 没有任何关系—— true 或 false?
- 我可以在前端应用程序中使用 gRPC 而不是 REST 或 GraphQL 进行通信吗?
我已经知道——或者假设我知道——这一点:
普罗布夫
- 数据交换的二进制协议
- 由谷歌设计
- 在客户端和服务器上使用生成的“ Struct”(类似描述)来解除/-Marshall 消息
GRPC
- 使用 Protobuf (v3)
- 又是谷歌的
- RPC 调用框架
- 也使用 HTTP/2
- 可以进行同步和异步通信
我再次假设,对于已经在使用这项技术的人来说,这是一个简单的问题。我还是要谢谢你对我有耐心,帮助我。我也非常感谢任何深入研究这些技术的网络。