c# - 使用新的 .NET SDK Azure.Messaging.EventHubs 使用 EventProcessorClient 进行检查点
问题描述
如何使用新的 Azure SDK在特定时间或指定数量的事件后定期保存检查点?
该示例仅使用不保存当前状态 的“InMemoryPartitionManager” 。
然后有一个BlobPartitionManager将状态保存在 blob 存储中,但似乎它保存了每个事件的状态,如果有很多事件,这可能会变得非常昂贵。
在 EventProcessorClient 和 BlobPartitionManager 上,我都找不到任何仅在特定时间间隔内保存的选项。
解决方案
据我所知,“BlobPartitionManager”是一个很好的解决方案。它只是在读取操作后将小于 1kb 的 json 文件存储在 azure blob 存储中。所以我认为它不会占用你太多的存储空间。可以参考这个教程了解更多关于存储blob的价格,我觉得存储这么小的东西也不算太贵。