采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
启动两个cusumer消费partition1和partition2,之前提过一个partition不能被同一个组中的多个cusumer同时消费,但是我这里打印cusumer1和cusumer2都消费到了partition1和partition2,请问老师这是什么原因呢
这不就是两个consumer分别消费两个partition么。。
我理解的是 cosumer1和comsumer2是在一个分组中的,然后topic有两个partition0和partition1,结果应该是cosumer1或者comsumer2只能消费到其中的一个partition,而不是comsumer1消费到了partition1和partition2,comsumer2也消费到了partition1和partition2,这就出现了同一个partition被同一个分组中的两个cusumer消费了
你理解的没错呀,或者也有可能同一个consumer消费两个partition, 这是kafka的loadbalance决定的
对的,但是我上面的代码是经典版启动的两个线程comsumer1和comsumer2,comsumer1和comsumer2都是同一个分组下的,但是控制台打印的时候comsumer1和comsumer2同时都消费到了partition1和partition2,所以就对这块有点疑问
找到原因了,与subscirbe方法不同,assign的consumer不会拥有kafka的group management机制,也就是当group内消费者数量变化的时候不会有reblance行为发生。
牛逼,我的好哥们儿
不知道是不是公司电脑的问题,家里面的电脑测出来和预想结果一致,谢谢老师
登录后可查看更多问答,登录/注册
系统讲解Kafka,实战结合,让你成为使用Kafka的高手
1.1k 2
941 13
1.1k 10
2.1k 10
2.0k 8