0
点赞
收藏
分享

微信扫一扫

5.【kafka运维】生产者消费组压力测试运维(5)



文章目录

  • ​​1.生产者压力测试kafka-producer-perf-test.sh​​
  • ​​2.消费者压力测试kafka-consumer-perf-test.sh​​
  • ​​More​​


日常运维问题排查 怎么能够少了滴滴开源的
滴滴开源LogiKM一站式Kafka监控与管控平台


1.生产者压力测试kafka-producer-perf-test.sh

1. 发送1024条消息--num-records 100并且每条消息大小为1KB​--record-size 1024​ 最大吞吐量每秒10000条​--throughput 100​


sh bin/kafka-producer-perf-test.sh --topic test_create_topic4 --num-records 100 --throughput 100000 --producer-props bootstrap.servers=localhost:9092 --record-size 1024


你可以通过​​LogIKM​​查看分区是否增加了对应的数据大小

5.【kafka运维】生产者消费组压力测试运维(5)_kafka

从​​LogIKM​​ 可以看到发送了1024条消息; 并且总数据量=1M; 1024条*1024byte = 1M;

2. 用指定消息文件--payload-file发送100条消息最大吞吐量每秒100条​--throughput 100​

  1. 先配置好消息文件​​batchmessage.txt​

    5.【kafka运维】生产者消费组压力测试运维(5)_bootstrap_02

  2. 然后执行命令

    发送的消息会从​​batchmessage.txt​​里面随机选择; 注意这里我们没有用参数​​--payload-delimeter​​指定分隔符,默认分隔符是\n换行;

    bin/kafka-producer-perf-test.sh --topic test_create_topic4 --num-records 1024 --throughput 100 --producer-props bootstrap.servers=localhost:9090 --payload-file config/batchmessage.txt

  3. 验证消息,可以通过 ​​LogIKM​​ 查看发送的消息
    5.【kafka运维】生产者消费组压力测试运维(5)_运维_03

相关可选参数

参数

描述

例子

​--topic​

指定消费的topic

​--num-records​

发送多少条消息

​--throughput​

每秒消息最大吞吐量

​--producer-props​

生产者配置, k1=v1,k2=v2

​--producer-props​​ bootstrap.servers= localhost:9092,client.id=test_client

​--producer.config​

生产者配置文件

​--producer.config​​ config/producer.propeties

​--print-metrics​

在test结束的时候打印监控信息,默认false

​--print-metrics​​ true

​--transactional-id​

指定事务 ID,测试并发事务的性能时需要,只有在 --transaction-duration-ms > 0 时生效,默认值为 performance-producer-default-transactional-id

​--transaction-duration-ms​

指定事务持续的最长时间,超过这段时间后就会调用 commitTransaction 来提交事务,只有指定了 > 0 的值才会开启事务,默认值为 0

​--record-size​

一条消息的大小byte; 和 --payload-file 两个中必须指定一个,但不能同时指定

​--payload-file​

指定消息的来源文件,只支持 UTF-8 编码的文本文件,文件的消息分隔符通过 ​​--payload-delimeter​​指定,默认是用换行\nl来分割的,和 --record-size 两个中必须指定一个,但不能同时指定 ; 如果提供的消息

​--payload-delimeter​

如果通过 ​​--payload-file​​​ 指定了从文件中获取消息内容,那么这个参数的意义是指定文件的消息分隔符,默认值为 \n,即文件的每一行视为一条消息;如果未指定​​--payload-file​​则此参数不生效;发送消息的时候是随机送文件里面选择消息发送的;

2.消费者压力测试kafka-consumer-perf-test.sh

消费100条消息--messages 100


sh bin/kafka-consumer-perf-test.sh -topic test_create_topic4 --bootstrap-server localhost:9090 --messages 100


相关可选参数

参数

描述

例子

​--bootstrap-server​

​--consumer.config​

消费者配置文件

​--date-format​

结果打印出来的时间格式化

默认:yyyy-MM-dd HH:mm:ss:SSS

​--fetch-size​

单次请求获取数据的大小

默认1048576

​--topic​

指定消费的topic

​--from-latest​

​--group​

消费组ID

​--hide-header​

如果设置了,则不打印header信息

​--messages​

需要消费的数量

​--num-fetch-threads​

feth 数据的线程数(​​废弃无效​​)

默认:1

​--print-metrics​

结束的时候打印监控数据

​--show-detailed-stats​

如果设置,则按照​​--report_interval​​配置的方式报告每个报告间隔的统计信息

​--threads​

消费线程数;(​​废弃无效​​)

默认 10

​--reporting-interval​

打印进度信息的时间间隔(以毫秒为单位)

More

Kafka专栏持续更新中…(源码、原理、实战、运维、视频、面试视频)

​​【kafka运维】Kafka全网最全最详细运维命令合集(精品强烈建议收藏!!!)_石臻臻的杂货铺-CSDN博客​​

​​【kafka实战】分区重分配可能出现的问题和排查问题思路(生产环境实战,干货!!!非常干!!!建议收藏)​​

​​【kafka异常】kafka 常见异常处理方案(持续更新! 建议收藏)​​

​​【kafka运维】分区从分配、数据迁移、副本扩缩容 (附教学视频)​​

​​【kafka源码】ReassignPartitionsCommand源码分析(副本扩缩、数据迁移、副本重分配、副本跨路径迁移​​

​​【kafka】点击更多…​​



举报

相关推荐

0 条评论