无法正确理解事件中心消费者组的工作方式
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,它用于构建实时数据管道和流式应用程序。
需求我想并行处理来自多个消费者的事件数据(相同数据)
我从文档中了解到要处理来自事件中心的相同数据,我们需要创建多个消费者组。
消费者组使多个消费应用程序能够各自拥有事件流的单独视图,并以自己的节奏和自己的偏移量独立读取流。
留言保留 1, 分区数 3
问题:我没有从 log1 消费者组 获取数据,而是 log1 当我尝试 $Default 和 log2 消费者组时,我正在并行获取数据。
谁能帮我理解这个问题?
基于official doc,您的理解是正确的。我尝试创建与您相同的事件中心来重现您的问题。
然后我通过 java 代码启动 2 EPH 来分别监控 Log1 和 log2。
然后我向事件中心发送 10 条消息以观察 2 EPH 控制台日志。
好像可以收到他们两个的消息,但是顺序乱了。我猜你的问题是 delay
。
更新答案:
据我所知,Azure 事件中心中的 delay
可能会受到很多方面的影响。也许网络,内部内部机制。但是,Azure 事件中心确保您的数据在有效存储时间内不会丢失。
如果你需要保证实时数据,你可以使用Kafka,它用于构建实时数据管道和流式应用程序。