gRPC学习笔记
Google RPC 框架
工作模式
gRPC 主要有四种 请求/响应 模式:
- 简单模式(Simple RPC)
客户端发起请求数据,服务端返回响应数据。
不足之处:
- 数据包过大造成瞬时压力;
- 需要所有数据包接收成功且正确后,才能回调响应,进行业务处理(无法做到客户端边发送,服务端边处理)。流模式:
- 大规模数据包
- 实时场景
服务端数据流模式(Server-side streaming RPC)
客户端发起一个请求,服务端返回一端连续的数据流响应。服务端与客户端的调用可以并行处理。客户端数据流模式(Client-side streaming RPC)
客户端将一段连续的数据发送到服务端,服务端返回一个响应。双向数据流模式(Bidirectional streaming RPC)
客户端发送连续的数据流,服务端返回交互的数据流。
安全通信
- gRPC 暂未提供读取证书及秘钥文件的接口,需要自行读取,或将证书或秘钥内容拷贝到变量中。(注意换行)
- gRPC 暂不支持带密码的私钥,需要修改源码,加入秘钥短语参数才行。
- gRPC 基于 HTTP2,证书验证时要求服务器名称匹配,否则建立链接失败。(关于服务器名称/别名,参见 OpenSSL学习笔记)