gRPC
-
google开发的高性能的RPC框架
-
优点
- 支持多语言和多平台
- 使用http2.0标准, 支持双向流和多路复用
-
http2.0
- 利用二进制的分帧层对请求头,请求体进行分组分包, 这样就允许在同一个连接可以发送和接收多路(多个请求)的数据
- 主要特点:
- 二进制分帧层 —— 对传输数据分包分组
- 多路复用 —— 同一个连接中发送和接收多个请求的数据
- 头部压缩 —— 对于请求头进行压缩处理, 重复内容不再传输
- 服务器推送 —— 在服务端对传输内容进行关联, 主动推送关联的传输数据
使用流程
- 根据proto3协议对应的接口定义语言来描述接口需求
- 使用gRPC的编译器生成对应平台的客户端和服务端代码模板
- 实现客户端和服务端的具体逻辑