如何摆脱Azure EventHub中的旧邮件?

azure azure-eventhub

4103 观看

2回复

28 作者的声誉

当我们为特定类型订阅EventHub时。我看到我的工作人员也在处理旧消息。有没有办法摆脱事件中心中的旧消息或手动更改所需消息的分区偏移值?截至目前,当工作人员重新启动检查点时,我们的工作人员不会跟踪已处理的消息,而是重新处理旧消息...那么,任何人都可以分享摆脱这个问题的方法吗?

感谢Radha先生。

作者: user3904654 的来源 发布者: 2015 年 4 月 2 日

回应 (2)


1

3568 作者的声誉

想象一下EventHub是存储在云上的持久事件流。您将需要维护从哪里开始读取的Cursor。没有别的办法了。您需要检查点才能执行此操作。大多数Messaging用户都对EventHubs中的Topic语义感到困惑。这个现有问题可以使这个方向更加清晰。

更多关于活动中心......

作者: Sreeram Garlapati 发布者: 03.04.2015 05:06

3

386 作者的声誉

您无法从Azure事件中心删除邮件,但我将提供几个备选方案。

  1. 您可以缩短邮件保留期。默认情况下,您可以设置保留期以将消息保留在1-7天之间。如果它保存的数据多于相关数据,只需将其缩短即可。
  2. 进入Azure事件中心的每条消息都附加一个名为“EventEnqueuedUtcTime”的列/属性,表示它进入事件中心的时间。让您的程序订阅Event Hub。所有事件都将流入,但您可以在IF语句中编程,仅在指定时间后处理具有EventEnqueuedUtcTime的消息。请记住,此时间是托管命名空间的服务器时间,其时钟可能与测量时间。
  3. 在消息中附加您自己的时间戳,并使用此新属性/列执行第2步。
作者: Phuc H Duong 发布者: 08.06.2015 01:53
32x32