无法正确理解事件中心消费者组的工作方式

Not able to understand correctly, how Event Hub consumer group working

需求我想并行处理来自多个消费者的事件数据(相同数据)

我从文档中了解到要处理来自事件中心的相同数据,我们需要创建多个消费者组。

消费者组使多个消费应用程序能够各自拥有事件流的单独视图,并以自己的节奏和自己的偏移量独立读取流。

留言保留 1, 分区数 3

问题:我没有从 log1 消费者组 获取数据,而是 log1 当我尝试 $Default 和 log2 消费者组时,我正在并行获取数据。

谁能帮我理解这个问题?

基于official doc,您的理解是正确的。我尝试创建与您相同的事件中心来重现您的问题。

然后我通过 java 代码启动 2 EPH 来分别监控 Log1 和 log2。

然后我向事件中心发送 10 条消息以观察 2 EPH 控制台日志。

好像可以收到他们两个的消息,但是顺序乱了。我猜你的问题是 delay


更新答案:

据我所知,Azure 事件中心中的 delay 可能会受到很多方面的影响。也许网络,内部内部机制。但是,Azure 事件中心确保您的数据在有效存储时间内不会丢失。

如果你需要保证实时数据,你可以使用Kafka,它用于构建实时数据管道和流式应用程序。