有多个代码示例可供使用(这里是其中之一),其中kafkaproducer和kafkaconsumers是实现的,并且可以单独启动。
我想找到启动代理的代码?
我认为zookeeper不是Kafka布朗克,因为zookeeper是为了别的目的。。管理群集状态。
在创建kafkaproducer时,我们传入属性
props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, IKafkaConstants.KAFKA_BROKERS);
这是不是意味着Kafka的制作者自己启动了经纪人?
2条答案
按热度按时间hwazgwia1#
Zookeeper负责管理Kafka经纪人的协调和同步,他们是独立的组成部分。
生产者不启动代理。producer和consumer是客户端组件,它们连接到一个或多个kafka代理,并在代理集群之间生成/消费数据。
Kafka经纪人通常是通过运行
kafka/bin/kafka-server-start.sh kafka/config/server.properties
,它将用中定义的属性启动一个kafka代理server.properties
文件。ccrfmcuu2#
重要的是要有这样清晰的概念:
kafka broker=kafka的一个示例已启动,我的意思是从(https://kafka.apache.org/downloads)
zookeeper=实际上是集群的协调器在这种特定情况下,您可以使用zookeeper在kafka上启动多个示例并获取集群。
kafka producer=负责将消息发送到特定kafka主题(如queue)的任何应用程序(实现kafka库)。
kafka consumer=负责获取kafka集群的消息并对其进行处理的任何应用程序(实现kafka库)。
对于start kafka,首先设置系统环境(可选),然后执行以下命令:
----第一次启动zookeeper
nohup zookeeper-server-start.sh$kafka\u home/config/zookeeper.properties&
-----然后是Kafka
nohup kafka-server-start.sh$kafka\u home/config/server.properties&