Kafka
基本概念
- Broker: Kafka 节点,多个 Broker 构成一个集群
- Producer: 生产者,通过 Broker 发布消息到指定 Topic 中
- Consumer: 消费者,通过 Broker 从指定 Topic 获取消息
- Topic: 某种类型消息的合集
- Partition: Topic 物理上的分组,多个 Partition 会被分散地存储在不同的 Kafka 节点上; 单个 Partition 的消息是保证有序的, 但整个 Topic 的消息就不一定是有序的
- Segment: 包含消息内容的指定大小的文件, 由 index 文件和 log 文件组成; 一个 Partition 由多个 Segment 文件组成
- Replica: 消息的冗余备份, 表现为每个 Partition 都会有 N 个完全相同的冗余备份, 这些备份会被尽量分散存储在不同的机器上;
命令行
- 进入 kafka 容器:
docker exec -it kafka /bin/bash
- 查看话题:
kafka-topics.sh --list --zookeeper zookeeper:2181
- 生产消息:
kafka-console-producer.sh --broker-list kafka:9092 --topic=test
- 消费消息:
kafka-console-consumer.sh --bootstrap-server kafka:9092 --from-beginning --topic test
参考