【Kafka基础】topics命令行操作大全:高级命令解析(2)

1 强制删除主题

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-topics.sh --delete \
    --zookeeper 192.168.10.33:2181 \
    --topic mytopic \
    --if-exists

参数说明

  • --zookeeper:直接连接Zookeeper删除(旧版本方式)
  • --if-exists:仅当主题存在时执行

2 查看主题的消息时间戳

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-dump-log.sh --files /export/home/kafka_zk/kafka_2.13-2.7.1/logs/my-topic-0/00000000000000000000.log \
    --print-data-log \
    --value-decoder-class "kafka.serializer.StringDecoder"

参数说明

  • --files:指定日志文件路径
  • --print-data-log:打印消息内容
  • --value-decoder-class:指定解码器

3 创建ACL控制的主题

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-acls.sh --add \
    --allow-principal User:Producer1 \
    --operation Write \
    --topic my-secure-topic \
    --bootstrap-server 192.168.10.33:9092

参数说明

  • --allow-principal:允许的用户
  • --operation:允许的操作(Write/Read/Create等)
  • --topic:应用ACL的主题

4 查看主题的生产者/消费者吞吐量

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-producer-perf-test.sh --topic my-topic \
    --num-records 100000 \
    --record-size 1000 \
    --throughput 2000 \
    --producer-props bootstrap.servers=192.168.10.33:9092

参数说明

  • --num-records:要发送的消息数量
  • --record-size:每条消息的大小(字节)
  • --throughput:目标吞吐量(消息/秒)

5 增加副本因子

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-reassign-partitions.sh \
    --bootstrap-server 192.168.10.33:9092 \
    --reassignment-json-file increase-replication-factor.json \
    --execute

参数说明:

  • --reassignment-json-file:指定分区重新分配的 JSON 配置文件路径
  • --execute:执行模式,实际触发分区重新分配操作

6 导出主题数据

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-console-consumer.sh \
    --bootstrap-server 192.168.10.33:9092 \
    --topic my-topic \
    --from-beginning \
    --timeout-ms 1000 \
    --max-messages 10

参数说明:

  • --from-beginning:从该主题最早的消息开始消费(如果不指定,则默认从最新消息开始)
  • --timeout-ms 1000:设置消费者等待消息的超时时间(毫秒),这里设置为1秒
  • --max-messages 10:限制最多消费10条消息后自动退出

7 性能测试

7.1 生产端

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-producer-perf-test.sh \
    --topic perf-test \
    --num-records 1000000 \
    --record-size 1000 \
    --throughput -1 \
    --producer-props bootstrap.servers=192.168.10.33:9092

7.2 消费端

复制代码
/export/home/kafka_zk/kafka_2.13-2.7.1/bin/kafka-consumer-perf-test.sh \
    --topic perf-test \
    --bootstrap-server 192.168.10.33:9092 \
    --messages 1000000
相关推荐
工具罗某人3 小时前
docker compose部署kafka集群搭建
docker·容器·kafka
qq_2975746711 小时前
【Kafka 系列・入门第六篇】Kafka 集群部署(3 节点)+ 负载均衡配置
分布式·kafka·负载均衡
浮尘笔记14 小时前
Docker中安装Kafka以及基本配置和用法、踩坑记录
后端·docker·容器·kafka·php
却话巴山夜雨时i14 小时前
互联网大厂Java面试实录:从Spring Boot到Kafka的技术问答
spring boot·redis·flink·kafka·java面试·rest api·互联网大厂
Zhu75814 小时前
【软件部署】用docker部署Apache Kafka 集群架构isolated模式带SSL
docker·kafka·apache
Zhu75815 小时前
【软件部署】用docker部署Apache Kafka 集群架构的isolated模式
docker·kafka·apache
xiaoyaohou1115 小时前
026、流式计算:Kafka与Spark Streaming实时处理
spark·kafka·linq
Devin~Y1 天前
高并发电商与AI智能客服场景下的Java面试实战:从Spring Boot到RAG与向量数据库落地
java·spring boot·redis·elasticsearch·spring cloud·kafka·rag
半桶水专家1 天前
kafka数据删除策略详解
分布式·kafka