简介
grpc的组成,有2部分:
- HTTP2.0
- PB
HTTP是一个网络协议,可以看相关资料;PB是Protobuf,给机器看的,我们能用肉眼看的是json,xml等格式。
它有四种模式:
- 一元rpc
- 服务端流
- 客户端流
- 双向rpc流
还有一个很重要的,就是同步和异步。
一元RPC
客户端发送一次请求,等待服务端响应结构,会话结束,就像一次普通的函数调用
这样简单;如下图:

服务端流
客户端发起一起请求,服务端会返回一个流,客户端会从流中读取一系列消
息,直到没有结果为止;如下图:

客户端流
客户端提供一个数据流并写入消息发给服务端,一旦客户端发送完毕,就等
待服务器读取这些消息并返回应答;如下图:

双向流rpc
客户端和服务端都一个数据流,都可以通过各自的流进行读写数据,这两个流
是相互独立的,客户端和服务端都可以按其希望的任意顺序独写;如下图:

使用场景
- 低延迟,高度可扩展的分布式系统
- 开发与云服务器通信的客户端
- 设计一个准确,高效,且与语言无关的新协议
- 分层设计,以实现扩展,例如:身份验证,负载均衡,日志记录和监控等
小结
这一篇主要介绍了grpc相关,通过grpc,可以轻松构建自己的网络通信,有兴趣,可以关注,抽个写点其他大型系统如何通过网络通信。当然,可以去这里看看。
404

被折叠的 条评论
为什么被折叠?



