Kafka是一种分布式的,基于发布/订阅的消息系统。
Kafka的组成包括:
- Kafka将消息以topic为单位进行归纳。
- 将向Kafka topic发布消息的程序成为producers.
- 将预订topics并消费消息的程序成为consumer.
- Kafka以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个broker.
Kafka的下载:https://kafka.apache.org/downloads 下载最新版本
解压后修改配置(config/server.properties:broker.id、log.dirs)
vim config/server.properties
broker.id = 1
log.dirs = "日志目录地址"
启动服务:
- Kafka用到了Zookeeper,所有首先启动Zookper,下面简单的启用一个单实例的Zookkeeper服务。可以在命令的结尾加个&符号,这样就可以启动后离开控制台。
bin/zookeeper-server-start.sh config/zookeeper.properties &
- 现在启动Kafka
bin/kafka-server-start.sh config/server.properties
- 创建topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
- 发送消息
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
- 启动consumer
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
查看所有topic
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --list