测试Kafka集群的吞吐量,即为每秒钟最大可以生产多少条消息,以及每秒钟最大可以消费多少条消息。
在测试过程中,由于吞吐量受topic的分片和副本的数量影响非常大,需要在测试过程中对不同的分片和副本数量进行多次的测试,得到一个较为准确的结果。
1、测试生产效率
1.1 创建Topic
./kafka-topics.sh --create --zookeeper node1:2181,node2:2182,node3:2183 --topic test --partitions 3 --replication-factor 1
1.2执行测试命令:本次测试将会新增4GB数据
./kafka-producer-perf-test.sh --topic test --num-records 5000000 --throughput -1 --record-size 1000 --producer-props bootstrap.servers=node1:9092,node2:9093,node3:9094 acks=1
命令参数说明:
注意:上述执行操作中,注意自己服务器或者虚拟机磁盘不足报错问题!
1.3 执行结果:
2、测试消费效率
2.1执行测试命令
./kafka-consumer-perf-test.sh --broker-list node1:9092,node2:9093,node3:9094 --topic test --fetch-size 1048576 --messages 5000000
命令参数说明: