由于消息需求的排序,我们有一个主题和一个分区。我们有两个消费者在不同的服务器上运行,它们具有相同的配置集,即groupid、consumerid、consumergroup。即
1个主题->1个分区->2个使用者
当我们部署消费者时,相同的代码部署在两个服务器上。注意到当一条消息出现时,我们看到两个消费者都在使用消息,而不是只有一个处理。让使用者在两台不同的服务器上运行的原因是,如果一台服务器崩溃,至少另一台可以继续处理消息。但看起来好像两个都是消费信息。读Kafka的文件,它说,如果我们有更多的消费者,而不是分区,那么一些保持闲置看不到这种情况发生。除了consumerid和groupid之外,我们在配置方面缺少的任何东西。谢谢
1条答案
按热度按时间23c0lvtd1#
正如@gary russel所说,只要这两个consumer示例有自己的consumer组,它们就会使用写入主题的每个事件。把他们放在同一个消费群体里。您可以在consumer.properties中提供使用者组id。