ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Kafka压力测试

2022-06-14 08:00:44  阅读:162  来源: 互联网

标签:测试 records -- Kafka topic test ms 压力 kafka


https://baijiahao.baidu.com/s?id=1659440526240768516&wfr=spider&for=pc

 

Kafka性能测试内容

性能测试内容:

kafka的测试主要分为producer端的吞吐量,consumer端的吞吐量,以及判断影响两者的因素。在实际测试环境中,需根据具体情况调整测试的数据量与参数。

性能测试工具:

 

我们使用Kafka自带的性能测试工具完成本次测试,当安装了Apache 版本的Kafka时,该测试工具的位置在安装目录的bin目录下;当安装了CDH版本的Kafka时,该测试工具一般位于Kafka Parcel路径下,默认位置为:/opt/cloudera/parcels/KAFKA/lib/kafka/bin。

这里我们用到的测试工具为:

kafka-producer-perf-test.sh (生产端)

kafka-consumer-perf-test.sh (消费端)

测试脚本

kafka-producer-perf-test.sh --topic test-1 --num-records 100000 --record-size 1000  --throughput 2000 --producer-props bootstrap.servers=192.168.21.100:9092,192.168.21.101:9092,192.168.21.102:9092
参数解析:
--topic topic名称,本例为test-1
--num-records 总共需要发送的消息数,本例为100000
--record-size 每个记录的字节数,本例为1000
--throughput 吞吐量即每秒钟发送的记录数,本例为2000,内存大可以设置大点
--producer-props bootstrap.servers= 192.168.21.100:9092,192.168.21.101:9092,192.168.21.102:9092

 

测试步骤

a.Partition分区与速率的关系

1、建立两个topic,分别为test_part1与test_part2

kafka-topics.sh --zookeeper 192.168.1.81:2181 --create --topic test_part1 --partitions 1 --replication-factor 1

kafka-topics.sh --zookeeper 192.168.1.81:2181 --create --topic test_part2 --partitions 5 --replication-factor 1

2、test_part1进行测试跑批:

kafka-producer-perf-test.sh --topic test_part1 --num-records 2000000 --record-size 200 --throughput 300000 --producer-props bootstrap.servers=192.168.1.82:9092

运行结果:

2000000 records sent, 136211.945788 records/sec (25.98 MB/sec), 1002.59 ms avg latency, 2559.00 ms max latency, 801 ms 50th, 2271 ms 95th, 2538 ms 99th, 2553 ms 99.9th.

3、test_part2进行测试跑批:

kafka-producer-perf-test.sh --topic test_part2 --num-records 2000000 --record-size 200 --throughput 300000 --producer-props bootstrap.servers=192.168.1.82:9092

运行结果:

2000000 records sent, 187529.301453 records/sec (35.77 MB/sec), 520.00 ms avg latency, 2196.00 ms max latency, 336 ms 50th, 1922 ms 95th, 2159 ms 99th, 2190 ms 99.9th.

结论:Producer端传输效率和partition数成正比。

 

b.Replication与速率的关系

1、建立两个topic, 分别为test_rep1与test_rep2,两个topic除了replication数量不一致外其他参数完全一致,使用kafka-producer-perf-test.sh进行测试。

kafka-topics.sh --zookeeper 192.168.1.81:2181 --create --topic test_rep1 --partitions 1 --replication-factor 1

kafka-topics.sh --zookeeper 192.168.1.81:2181 --create --topic test_rep2 --partitions 1 --replication-factor 3

2、test_rep1进行跑批测试:

kafka-producer-perf-test.sh --topic test_rep1 --num-records 2000000 --record-size

运行结果:

2000000 records sent, 217438.573603 records/sec (41.47 MB/sec), 610.43 ms avg latency, 1387.00 ms max latency, 497 ms 50th, 1284 ms 95th, 1341 ms 99th, 1386 ms 99.9th.

3、test_rep2进行跑批测试:

kafka-producer-perf-test.sh --topic test_rep2 --num-records 2000000 --record-size 200 --throughput 300000 --producer-props bootstrap.servers=192.168.1.82:9092

运行结果:

2000000 records sent, 103423.311614 records/sec (19.73 MB/sec), 1353.03 ms avg latency, 4050.00 ms max latency, 1213 ms 50th, 3042 ms 95th, 3998 ms 99th, 4047 ms 99.9th

结论:Producer端传输效率和replication数量成反比。

标签:测试,records,--,Kafka,topic,test,ms,压力,kafka
来源: https://www.cnblogs.com/qiusheng0755/p/16373014.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有