应用场景: kafka的多消费者消费同一个topic的数据,并且保证每条记录都能被消费掉
实现方式: topic要创建多个partition(partition的个数要大于等于消费者的个数),多个消费者在同一个组之内
第一步: 创建topic的多partition,并进行验证,如下所示:
[root@hadoop ~]# kafka-topics.sh --list --zookeeper hadoop:2181
[root@hadoop ~]# kafka-topics.sh --create --zookeeper hadoop:2181 --topic kafkatest --partitions 3 --replication-factor 1
Created topic "kafkatest".
[root@hadoop ~]# kafka-topics.sh --list --zookeeper hadoop:2181
kafkatest
[root@hadoop ~]# kafka-topics.sh --describe --zookeeper hadoop:2181
Topic:kafkatest PartitionCount:3 ReplicationFactor:1 Configs:
Topic: kafkatest Partition: 0 Leader: 0 Replicas: 0 Isr: 0
Topic: kafkatest Partition: 1 Leader: 0 Replicas: 0 Isr: 0
Topic: kafkatest Partition: 2 Leader: 0 Replicas: 0 Isr: 0
结果显示,已经topic进行创建成功,并且partition的个数为3 (因为后面验证的kafka的消费者的个数为2)
第二步: 增加kafka的消费者配置文件consumer2.properties,为后面的测试做准备,如下所示:

本文档详细介绍了如何解决在Kafka多消费者环境下遇到的ConsumerRebalanceFailedException异常问题。通过创建足够多的partitions,配置消费者组,并调整消费者配置来确保每个消费者都能成功消费数据,避免数据丢失或重复。通过步骤演示,包括启动生产者、消费者,以及异常后的配置修改和验证,最终实现稳定消费。
最低0.47元/天 解锁文章
3660

被折叠的 条评论
为什么被折叠?



