Kafka shell

Topic:可以理解为一个队列,生产者和消费者面向的都是一个 topic。

Partition:主要为了做负载,实现扩展性,一个非常大的 topic 可以分布到多个 broker(即服务器)上,一个 topic 可以分为多个 partition,每个 partition 是一个有序的队列。

一、topic 操作

# 查看当前服务器中的所有 topic
kafka-topics.sh --zookeeper h136:2181 --list

# 创建 topic,副本数不能超过节点数
kafka-topics.sh --zookeeper h136:2181 --create --replication-factor 3 --partitions 1 --topic first
# 选项说明:
# --topic:定义 topic 名
# --replication-factor:定义副本数
# --partitions:定义分区数

# 查看某个 Topic 的详情
bin/kafka-topics.sh --zookeeper h136:2181 --describe --topic first

# 修改分区数
bin/kafka-topics.sh --zookeeper h136:2181 --alter --topic first --partitions 3

# 删除 topic
kafka-topics.sh --zookeeper h136:2181 --delete --topic first

二、生产者与消费者

# 生产者
kafka-console-producer.sh --broker-list h136:9092 --topic first

# 消费者,可连接 Kafka 集群和 Zookeeper 集群
kafka-console-consumer.sh --bootstrap-server h136:9092 --topic first --from-beginning
# 0.90 版本之前启动消费者的方法
kafka-console-consumer.sh --zookeeper h140:2181 --topic first
# --from-beginning:会把主题中以往所有的数据都读取出来。


http://kafka.apache.org/documentation/#quickstart_createtopic

原文地址:https://www.cnblogs.com/jhxxb/p/11498374.html