根据Kafka 教程中的此文档
Zookeper 启动于 2181 端口 Broker/Kafka 启动于 9092
启动生产者发送消息
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Hello-Kafka // producer is producing directly to broker not zookeeper which is correct
Run Code Online (Sandbox Code Playgroud)
启动消费者接收消息
bin/kafka-console-consumer.sh --zookeeper localhost:2181 —topic Hello-Kafka --from-beginning
Run Code Online (Sandbox Code Playgroud)
根据我的理解,消费者直接从代理消费消息,但在上面的消费者命令中,我们没有提到代理,而只提到了动物园管理员。消费者会连接到zookeeper(而不是broker)来消费消息吗?
有旧的 Kafka 消费者(0.8.2 及更早版本)和新的 Kafka 消费者(0.9 及更高版本)。有关新消费者如何工作的详细描述,请参阅此处的原始公告博客
旧消费者会连接到 zookeeper,但仍会从 Kafka 获取所有消息。
新的消费者没有 zookeeper 依赖,也根本没有连接到 zookeeper。
控制台生产者和控制台消费者支持旧的和新的 api,具体取决于您提供的选项。您提供的示例控制台消费者是旧消费者,因为它指定了 --zookeeper 而不是 --bootstrap-server
| 归档时间: |
|
| 查看次数: |
5920 次 |
| 最近记录: |