三个核心点:
-
HTTP/2 协议:
- 多路复用:允许在单个 TCP 连接上并行发送多个请求和响应,减少了连接建立和拆除的开销。
- 二进制帧:数据以二进制帧的形式传输,提高了传输效率和解析速度。
- 流控:提供了更细粒度的流控机制,可以在连接级别和流级别进行流量控制。
- 头部压缩:减少了传输的数据量,提高了网络带宽利用率。
-
Protocol Buffers:
- 作为 gRPC 的接口定义语言,定义了服务和消息的结构。
- 提供了高效的序列化和反序列化机制,减少了数据传输的体积和处理时间。
-
多语言支持:
- gRPC 提供了多种语言的实现和支持,生成的客户端和服务端代码封装了底层的网络通信细节,使得开发者可以专注于业务逻辑的实现。