有两个topic 分别有3个partition 我在客户端分别定义了6个consumer 只有先创建的consumer对应的topic能被消费到
如果你的2个topic,分别有3个分区,你在客户端订阅的6个consumer,只有先创建的consumer能拿到对应的topic,正常的话是3个consumer订阅topicA,3个consumer订阅的是topicB,建议你检查下消费者订阅的是否有问题。
有道理,同一个consumer group可以消费到两个topic,之前为每个topic定义了一个group, 发现只有一个会生效
你仔细观察,跟2个topic无关。比如,一个topic有3个partition,那么最多只能有3个consumer能消费到,其余的consumer永远拿不到消息(除非拿到消息的consumer挂了)。简单一点,能获得消息的consumer的数量 == partition的数量。
我也觉得是这个问题导致的,但如果每个topic对应的partition是独立的那么,我这里定义每个topic有3个partition,那么初始化6个consumer应该满足这条规则,但只有先定义的那个topic的3个consumer才能消费,另一个topic消费不到
应该是consumer订阅的topic有问题,友情提示:也检查下集群里面的topic分区是不是对的,别弄了一圈发现集群不对。
找不到想要的答案?提一个您自己的问题。
0 声望
这家伙太懒,什么都没留下
如果你的2个topic,分别有3个分区,你在客户端订阅的6个consumer,只有先创建的consumer能拿到对应的topic,正常的话是3个consumer订阅topicA,3个consumer订阅的是topicB,建议你检查下消费者订阅的是否有问题。
有道理,同一个consumer group可以消费到两个topic,之前为每个topic定义了一个group, 发现只有一个会生效
你仔细观察,跟2个topic无关。
比如,一个topic有3个partition,那么最多只能有3个consumer能消费到,其余的consumer永远拿不到消息(除非拿到消息的consumer挂了)。
简单一点,能获得消息的consumer的数量 == partition的数量。
我也觉得是这个问题导致的,但如果每个topic对应的partition是独立的那么,我这里定义每个topic有3个partition,那么初始化6个consumer应该满足这条规则,但只有先定义的那个topic的3个consumer才能消费,另一个topic消费不到
应该是consumer订阅的topic有问题,友情提示:也检查下集群里面的topic分区是不是对的,别弄了一圈发现集群不对。
你的答案