快速开始
本教程假定您是一只小白,没有Kafka 或ZooKeeper 方面的经验。Kafka控制脚本在Unix和Windows平台有所不同,在Windows平台,请使用 bin\windows\
而不是bin/
, 并将脚本扩展名改为.bat
.
kafka官方中文文档地址:https://kafka.apachecn.org/
搭建单节点:
Step 1: 下载安装包
https://kafka.apachecn.org/downloads.html
下载 1.0.0版本并解压缩。.
> tar -xzf kafka_2.11-1.0.0.tgz
> cd kafka_2.11-1.0.0
Step 2: 启动服务器
Kafka 使用 ZooKeeper 如果你还没有ZooKeeper服务器,你需要先启动一个ZooKeeper服务器。您可以通过与kafka打包在一起的便捷脚本来快速简单地创建一个单节点ZooKeeper实例。
本文已默认你已搭建好zk并且地址为:localhost:2181。文章底部有搭建zk的步骤!
> bin/zookeeper-server-start.sh config/zookeeper.properties
[2013-04-22 15:01:37,495] INFO Reading configuration from: config/zookeeper.properties (org.apache.zookeeper.server.quorum.QuorumPeerConfig)
...
现在启动Kafka服务器:
> bin/kafka-server-start.sh config/server.properties
[2013-04-22 15:01:47,028] INFO Verifying properties (kafka.utils.VerifiableProperties)
[2013-04-22 15:01:47,051] INFO Property socket.send.buffer.bytes is overridden to 1048576 (kafka.utils.VerifiableProperties)
...
创建topic和使用
Step 3: 创建一个 topic
让我们创建一个名为“test”的topic,它有一个分区和一个副本:
> bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
现在我们可以运行list(列表)命令来查看这个topic:
> bin/kafka-topics.sh --list --zookeeper localhost:2181
test
或者,您也可将代理配置为:在发布的topic不存在时,自动创建topic,而不是手动创建。
Step 4: 发送消息
Kafka自带一个命令行客户端,在bin目录下,它从文件或标准输入中获取输入,并将其作为message(消息)发送到Kafka集群。默认情况下,每行将作为单独的message发送。
运行 producer,然后在控制台输入一些消息以发送到服务器,参考如下。
> bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
This is a message
This is another message
Step 5: 启动一个 consumer
Kafka 还有一个命令行consumer(消费者),在bin目录下,将消息转储到标准输出。
> bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
This is a message
This is another message
如果您将上述命令在不同的终端中运行,那么现在就可以将消息输入到生产者终端中,并将它们在消费终端中显示出来。
所有的命令行工具都有其他选项;运行不带任何参数的命令将显示更加详细的使用信息。
搭建集群请参考我的另外一篇文章: https://blog.csdn.net/qq_42390636/article/details/114802765
关注微信公众号 发哥讲Java ,回复kafka 即可获取到视频学习链接和word文档。