是否有dapr.io设计模式来获取状态存储中的所有密钥

问题描述

在容器化微服务中,我使用dapr.io状态管理系统作为设备的数据缓存;提供了一种大规模访问许多设备状态的高效方法

使用一种简单的CRUD方法,我可以使用dapr创建,读取,更新和删除设备状态,如下所示:

  • POST设备/
  • 获取设备/钥匙
  • 放置设备/钥匙
  • 删除设备/钥匙

我的主要问题是获取所有键的列表:

由于dapr不支持状态存储中所有键的列表,因此我需要使用自己的实现分别跟踪所有键。

https://github.com/dapr/docs/tree/master/concepts/state-management

到目前为止,我已经测试了两种方法

  1. POST / PUT / DELETE设备调用的SAGA模式将事件发布到索引API
  2. 在设备微服务POST / PUT / DELETE调用中手动管理索引

在我看来,上述方法增加不必要的复杂性并造成规模问题。

是否有一种模式可以使用dapr实现所有键的列表,而又没有上述复杂性?

解决方法

从0.10.0版本开始,存在用于获取批量状态的状态API操作:https://github.com/dapr/docs/blob/master/reference/api/state_api.md#get-bulk-state

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...