【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
相关推荐
阿里云云原生5 天前
告别冗长链路!Kafka × Table Bucket 实现开放表格式零 ETL 实时入湖
云原生·kafka
whaledown11 天前
Kafka 与 Java 消息队列入门:用订单场景理解核心机制
java·kafka·消息队列·springboot
guslegend11 天前
第1章:初始Kafka
分布式·kafka
Devin~Y11 天前
大厂 Java 面试实录:从音视频内容社区到 AI RAG 的全链路技术设计
java·spring boot·redis·spring cloud·微服务·kafka·音视频
小马爱打代码12 天前
Kafka消息队列监控:Topic积压、吞吐量、Broker负载及消费者组全观测
分布式·kafka
Solis程序员12 天前
Raft:分布式系统的定海神针
java·分布式·kafka·rabbitmq·agent·raft
linux修理工14 天前
使用codebuddy学习kafka
分布式·学习·kafka
开开心心就好14 天前
解决截图被拦截黑屏问题的免费小工具
安全·智能手机·flink·kafka·pdf·音视频·1024程序员节
linux修理工14 天前
kafka积压
数据库·分布式·kafka
杰克逊的日记14 天前
kafka消息堆积了怎么处理
大数据·分布式·kafka