将协议缓冲消息存储在文档数据库中

时间:2017-05-19 08:57:23

标签: c# mongodb protocol-buffers grpc

我们正在使用grpc上的协议缓冲区消息来实现以多种语言开发的几个组件之间的微服务架构(c# - c ++ - java)。

我们的一个组件有责任将这些消息保存在文档存储中。目前我们正在使用mongodb和c#驱动程序和协议缓冲区c#生成的类需要手写序列化/反序列化代码才能与c#驱动程序一起使用。)

是否有任何文档存储/数据库可以直接存储协议缓冲区消息(而不是二进制blob)并对这些消息属性启用查询?

1 个答案:

答案 0 :(得分:0)

可以编写一个“redis模块”(4.0)来完成这项工作,类似于rejson is implemented; redis模块允许您将自己的代码100%放入服务器中。您需要考虑模式应该如何工作,以及您希望对数据支持哪些操作;本质上:您可以将其保留在单个二进制字符串中,还是需要在服务器内提取数据,只需使用边界上的原始API?