背景
kafka提供了性能吞吐量测试脚本,分别是 kafka-producer-perf-test.sh 和 kafka-consumer-perf-test.sh,通过该脚本可以对生产者性能和消费者性能进行测试。
环境
centos7 1C 1G
3Broker在同一台机器
测试参数
生产者测试参数
参数 | 说明 |
--topic | 指定生产者发送消息的topic |
--throughput | 每秒发送的最大消息数 |
--record-size | 每条消息字节数 |
--producer-props | 通过键值对的方式指定配置属性,多组属性用空格分隔。一般只配置bootstrap.servers |
--num-records | 测试时发送消息的总记录数 |
测试者测试参数
参数 | 说明 |
--topic | 指定消费者接收消息的topic |
--thread |
指定线程数 |
--messages | 接收消息总记录数 |
--group | 消费者组 |
--bootstrap-server | kafka服务ip:port |
测试实例
一个分区,两个副本
1、创建topic
./kafka-topics.sh --create --topic t1-test --zookeeper 192.168.56.101:2181 --partitions 1 --replication-factor 2
2、生产者测试
./kafka-producer-perf-test.sh --topic t1-test --num-records 1000000 --record-size 1000 --throughput 50000 --producer-props bootstrap.servers=192.168.56.101:9092
3、消费者测试:
./kafka-consumer-perf-test.sh --bootstrap-server 192.168.56.101:9092 --group g1-test --messages 1000000 --topic t1-test
三个分区,两个副本
1、创建topic
./kafka-topics.sh --create --topic t3-test --zookeeper 192.168.56.101:2181 --partitions 3 --replication-factor 2
2、生产者测试
./kafka-producer-perf-test.sh --topic t3-test --num-records 1000000 --record-size 1000 --throughput 50000 --producer-props bootstrap.servers=192.168.56.101:9092
3、消费者测试:
./kafka-consumer-perf-test.sh --bootstrap-server 192.168.56.101:9092 --group g3-test --messages 1000000 --topic t3-test
参考地址:kafka性能测试实例