1

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

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

  • 邮政设备/
  • 获取设备/钥匙
  • PUT设备/钥匙
  • 删除设备/密钥

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

  • 获取设备

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

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

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

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

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

是否有使用 dapr 实现所有键列表的模式而没有上述复杂性?

4

1 回答 1

1

自 0.10.0 版以来,有一个状态 API 操作来获取批量状态:https ://github.com/dapr/docs/blob/master/reference/api/state_api.md#get-bulk-state

于 2020-09-10T04:39:50.860 回答