【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
相关推荐
Github掘金计划2 天前
开发者狂喜!GitHub 官方开源:支持 Copilot/Cursor,规范即代码,27k Star 封神!
java·python·kafka·github·copilot
ha_lydms2 天前
Kafka如何提高读写效率
分布式·kafka
武子康2 天前
Java-196 消息队列选型:RabbitMQ vs RocketMQ vs Kafka
java·分布式·kafka·rabbitmq·rocketmq·java-rocketmq·java-rabbitmq
华大哥2 天前
Kafka 和springboot 整合Logback日志
spring boot·kafka·logback日志
SoleMotive.3 天前
kafka和其他消息队列的区别
分布式·kafka
吃喝不愁霸王餐APP开发者3 天前
霸王餐用户行为埋点:Kafka Connect+ClickHouse实时OLAP分析
分布式·clickhouse·kafka
倒流时光三十年3 天前
Kafka 客户端 Offset Explore 配置
kafka·offsetexplore
深蓝电商API3 天前
爬虫+消息队列:RabbitMQ vs Kafka vs RocketMQ选型
爬虫·kafka·rabbitmq
梦里不知身是客114 天前
一个集群的zk节点挂掉之后影响kafka的运行吗
分布式·kafka
RestCloud4 天前
如何用ETL做实时风控?从交易日志到告警系统的实现
数据库·数据仓库·kafka·数据安全·etl·数据处理·数据集成