RPC是什么?
1. RPC代指远程过程调用
2. 包含了传输协议和编码(对象序列号)协议
3. 允许运行于一台计算机的程序调用另一台计算机的子程序
使用RPC有什么好处?
简单、通用、高效、效率
gRP是什么?
1. gRPC是一个高性能、开源、通用的RPC框架
2. 基于HTTP2.0协标准设计开发
3.支持多语言,默认采用Protocol Buffers数据序列化协议
grpc请求流程图
什么是Protocol Buffers?
1. 是一种轻便高效的序列化结构化数据的协议
2. 通常用在存储数据和需要远程数据通信的程序上
3. 跨语言,更小(跟xml、json比较)、更快、也更简单
为什么使用Protocol Buffers?
1. 加速站点之间数据传输速度
2. 解决数据传输不规范问题
Protocol Buffers常用概念?
1. Message定义: 描述一个请求或者响应的消息格式
2. 字段标识: 消息的定义中,每个字段都有一个唯一的数值标签
3. 常用数据类型: double、float、int32/int64,bool、string、bytes
4. Service服务定义: 在Service中可以定义一个RPC的服务接口
Protocol Buffers Message中字段修饰:
1.singular: 表示成员有0个或者1个,一般省略不写
2.repeated: 表示该字段可以包含0-N个元素(相当于go的数组或者切片)