【发布时间】:2019-04-28 01:05:01
【问题描述】:
我是 apache Kafka 的新人。当我通过http://kafka.apache.org/quickstart 使用最新版本的 kafka_2.12-2.2.0 进行快速入门说明时。我遇到了问题,无法自己解决。
问题是,在我的笔记本电脑上,我创建了 3 个代理来模拟集群情况。
每个代理都有自己的服务器属性文件。我对每个服务器属性文件进行了以下更改,并保留其他默认值。
broker.id=1 (server2: broker.id=2; server3: broker.id=3)
listeners=PLAINTEXT://127.0.0.1:9092 (server2: 127.0.0.1:9023; server3: 127.0.0.1:9004)
log.dirs=/tmp/kafka-logs (server2: /tmp/kafka-logs-2; server3: /tmp/kafka-logs-3)
num.partitions=3 (for all servers)
offsets.topic.replication.factor=3 (for all servers)
在我启动 ZK 和那 3 个代理之后,我(可以)在任何代理上创建一个包含 3 个分区的主题“TestTopic”
bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 3 --topic TestTopic
然后我使用以下命令在同一组“rickygroup”中启动 3 个消费者。
//消费者一号
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --from-beginning --topic TestTopic —group.id rickygroup —group.name rickygroup
//消费者二
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9093 --from-beginning --topic TestTopic —group.id rickygroup —group.name rickygroup
//消费三
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9094 --from-beginning --topic TestTopic —group.id rickygroup —group.name rickygroup
现在,我使用另一个终端发布有关主题“TestTopic”的一些消息。问题是,以上 3 个消费者都将获得完全相同的消息。我的理解是 3 个消费者应该无差别地消费所有消息,而不是相同。否则,消费者组显示重复消费而不是余额消费。
我对消费群体的概念有什么误解吗?还是我在这里做错了什么?
【问题讨论】:
标签: apache-kafka kafka-consumer-api