【发布时间】:2020-11-23 13:26:09
【问题描述】:
我目前正在构建一个 python gRPC 服务器,它将大量不同的 proto 消息序列化为 json 以将它们存储到 no-sql 数据库中。我想简化此服务器的扩展,以便我们可以添加新类型而无需重写 gRPC 服务器和重新部署。理想情况下,我们想定义一条新消息,将其放入 proto 文件中并仅更新客户端。服务器一开始应该期待任何类型,但知道在序列化/反序列化时要查找的 .proto 文件或文件夹。
我已经阅读了 Any 类型,并且正在探索这是否是我的方法。有一些关于它的文档,但很少有例子可以使用。我不太明白的一件事是如何存储/检索“Any”字段的类型。
- 所有文档都使用 https 作为 Any 字段类型的协议(例如 type.googleapis.com/google.protobuf.Duration)。这也是默认设置。如果我使用本地文件系统会是什么样子?我如何将其存储在客户端的 proto 消息中?
- 如何在服务器端检索类型?
- 在哪里可以找到类似的示例?
【问题讨论】: