Kafka 基本指令大全

注意:

  • 下载的kafka会自带zookeeper,所以不需要在自己重新下载。
  • 使用kafka前要先启动zookeeper,在启动kafka
  • 在关闭kafka的时候也要先关闭kafka,在关闭zookeeper(如果先关了zookeeper,会发现kafka一直关闭不了)

启动zookeeper

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 kakfa-test
参数含义
replication-factor每个topic的副本数
partitions将topic中的消息划分成n快物理分区
topic主题的名字

这里简单对几个参数进行解释:

1 replication-factor:
因为主题能细分为分区,所以会将主题下每个分区都创建一个副本并且要放在与原副本不同的broker中,目的很简单就是为了防止一个broker宕机,导致里面分区的消息消失。副本数不能超过broker的数量。

2 partitions:
kafka会通过分区策略将主题分配到不同的broker中,主题里面的消息会通过负载均衡分布到不同的分区。消费者端通过监听偏移量,来拉取数据。
一般分区越多能提升吞吐量。如果分区过多,那么日志分段也会很多,写的时候由于是批量写,其实就会变成随机写了,随机 I/O 这个时候对性能影响很大。

向topic 发送消息

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic kakfa-test
#向控制台输入一下消息     每次按回车 就会自动发送一次
>hello

消费Topic消息

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic kafka-test --from-beginning

#从控制台显示消息
hello

查询所有的topics

kafka-topics.sh --zookeeper localhost:2181 --list 

查询topic的offset

bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic kafka-test1 --time -1/-2
# time参数 -1表示获取offset的最大值
#          -2表示获取offset的最小值

在这里插入图片描述

查询指定消费者组的信息

bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group test-consumer-group

在这里插入图片描述

©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页