Azure Event Hubs允许在使用者组内进行分区。在我的示例中,我有两个使用者,它们使用不同的逻辑发送通知。我需要在消费者内部决定应用哪个逻辑,因此每个事件都应该被两个应用程序捕获,然后根据事件数据决定正确的逻辑。最初,我只有一个消费者,并决定在该消费者中应用什么逻辑,因为未来将有超过2种处理方法,但我被指示为每种处理方法有多个消费者,这不是最佳的,甚至在只有一个消费者群体的大规模下也无法实现。当我启动两个消费者时,它们在不同的分区中侦听,每个消费者只捕获一个事件,因此我不能保证我将对事件应用正确的逻辑,因为它不会被两个应用程序消费。理想情况下,我应该有两个消费者组,但我使用的是Basic层,它只允许一个。然而,在微软的文档中,它声明为“There can be at most 5 concurrent readers on a partition per consumer group”,据我所知,如果两个读者都在同一个分区中侦听,他们都会捕获所有事件。我试着在我的EventProcessorClient中设置分区,但我没有找到任何这样做的方法。是否有任何方法可以定义从消费者中读取哪个分区,或者是否有其他方法可以在多个消费者中处理同一事件?
1条答案
按热度按时间vzgqcmou1#
感谢@Jesse Squire的评论。根据此MSDOC,创建消费者组是合理划分受众的最佳方法,这样他们只能看到他们感兴趣的事件,我们无法指定向指定的消费者组发送/接收哪个消息。
字符串
x1c 0d1x的数据