kafka 简介
概念
Apache Kafka 是一个开源的分布式事件流平台。它主要用于高吞吐量、低延迟的数据管道和流处理,本质上是一个分布式消息队列系统,但功能远超传统的消息中间件。
Producer(生产者):发布消息到 Kafka 的应用程序。
Consumer(消费者):订阅并处理消息的应用程序。
Topic(主题):消息按照主题进行分类,类似于数据库的表。
Partition(分区):一个 Topic 可以分为多个分区,每个分区是一个有序的、不可变的消息序列,保证分区内消息的顺序。
Broker(代理):Kafka 集群由多个服务器组成,每个服务器称为一个 Broker。
Consumer Group(消费者组):一组消费者共同消费一个 Topic 的消息,组内每个消费者负责不同的分区,实现负载均衡和容错。
Offset(偏移量):每个消息在分区内的唯一编号,消费者通过偏移量来记录消费位置。
命令
# 列出所有主题
./kafka-topics.sh --list --bootstrap-server localhost:9092
# 创建主题
./kafka-topics.sh --bootstrap-server localhost:9092 --create --topic <topic-name>
# 生产消息
./kafka-console-producer.sh --bootstrap-server localhost:9092 --topic <topic-name>
# 查看消息
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic <topic-name>
# 删除主题
./kafka-topics.sh --bootstrap-server localhost:9092 --delete --topic <topic-name>

说些什么吧!