Google RPC 框架

工作模式

gRPC 主要有四种 请求/响应 模式:

  1. 简单模式(Simple RPC)
    客户端发起请求数据,服务端返回响应数据。
    不足之处:
  • 数据包过大造成瞬时压力;
  • 需要所有数据包接收成功且正确后,才能回调响应,进行业务处理(无法做到客户端边发送,服务端边处理)。流模式:
  • 大规模数据包
  • 实时场景
  1. 服务端数据流模式(Server-side streaming RPC)
    客户端发起一个请求,服务端返回一端连续的数据流响应。服务端与客户端的调用可以并行处理。

  2. 客户端数据流模式(Client-side streaming RPC)
    客户端将一段连续的数据发送到服务端,服务端返回一个响应。

  3. 双向数据流模式(Bidirectional streaming RPC)
    客户端发送连续的数据流,服务端返回交互的数据流。

安全通信

  1. gRPC 暂未提供读取证书及秘钥文件的接口,需要自行读取,或将证书或秘钥内容拷贝到变量中。(注意换行)
  2. gRPC 暂不支持带密码的私钥,需要修改源码,加入秘钥短语参数才行。
  3. gRPC 基于 HTTP2,证书验证时要求服务器名称匹配,否则建立链接失败。(关于服务器名称/别名,参见 OpenSSL学习笔记

参考 gRPC双向数据流的交互控制

留言