用于测试Kafka集群性能的框架

问题描述 投票:1回答:1

是否有用于测试Kafka 2.12集群性能的全面测试框架,其中使用预定义的数据集进行了测试?

我看过Jmeter和Pepper-box,但看来它们不符合我的要求

预先感谢

testing apache-kafka
1个回答
0
投票

Kafka具有可执行脚本来测试生产者和消费者的性能。

kafka-producer-perf-test.sh

kafka-consumer-perf-test.sh

设置

bin/kafka-topics.sh \
  --zookeeper localhost:2181 \
  --create \
  --topic test-rep-one \
  --partitions 6 \
  --replication-factor 1
bin/kafka-topics.sh \
  --zookeeper localhost:2181 \
  --create \
  --topic test \
  --partitions 6 --replication-factor 3

生产者

单线程,无复制

bin/kafka-producer-perf-test.sh \
  --topic test \
  --num-records 50000000 \
  --record-size 100 \
  --throughput -1 \
  --producer-props acks=1 \
  bootstrap.servers=localhost:9092 \
  buffer.memory=67108864 \
  batch.size=8196

单线程,异步3x复制

    bin/kafk-topics.sh \
  --zookeeper zookeeper.example.com:2181 \
  --create \
  --topic test \
  --partitions 6 \
  --replication-factor 3
bin/kafka-producer-perf-test.sh \
  --topic test \
  --num-records 50000000 \
  --record-size 100 \
  --throughput -1 \
  --producer-props acks=1 \
  bootstrap.servers=localhost:9092 \
  buffer.memory=67108864 \
  batch.size=8196

单线程,同步3倍复制

bin/kafka-producer-perf-test.sh \
  --topic test \
  --num-records 50000000 \
  --record-size 100 \
  --throughput -1 \
  --producer-props acks=1 \
  bootstrap.servers=localhost:9092 \
  buffer.memory=67108864 batch.size=64000

三个生产者,3x异步复制

bin/kafka-producer-perf-test.sh \
  --topic test \
  --num-records 50000000 \
  --record-size 100 \
  --throughput -1 \
  --producer-props acks=1 \
  bootstrap.servers=localhost:9092 \
  buffer.memory=67108864 \
  batch.size=8196

吞吐量与存储的数据

bin/kafka-producer-perf-test.sh \
  --topic test \
  --num-records 50000000 \
  --record-size 100 \
  --throughput -1 \
  --producer-props acks=1 \
  bootstrap.servers=localhost:9092 \
  buffer.memory=67108864 batch.size=8196

邮件大小的影响

for i in 10 100 1000 10000 100000; do
  echo ""
  echo $i
  bin/kafka-producer-perf-test.sh \
    --topic test \
    --num-records $((1000*1024*1024/$i))\
    --record-size $i\
    --throughput -1 \
    --producer-props acks=1 \
    bootstrap.servers=localhost:9092 \
    buffer.memory=67108864 \
    batch.size=128000

消费者

消费量

bin/kafka-consumer-perf-test.sh \
  --zookeeper localhost:2181 \
  --messages 50000000 \
  --topic test \
  --threads 1

3个使用者在三台服务器上,运行:

bin/kafka-consumer-perf-test.sh \
  --zookeeper localhost:2181 \
  --messages 50000000 \
  --topic test \
  --threads 1

端到端延迟

bin/kafka-run-class.sh \
  kafka.tools.TestEndToEndLatency \
  localhost:9092 \
  localhost:2181 \
  test 5000

生产者和消费者

bin/kafka-run-class.sh \
  org.apache.kafka.tools.ProducerPerformance \

bin/kafka-producer-perf-test.sh \
  --topic test \
  --num-records 50000000 \
  --record-size 100 \
  --throughput -1 \
  --producer-props acks=1 \
  bootstrap.servers=localhost:9092 \
  buffer.memory=67108864 \
  batch.size=8196

bin/kafka-consumer-perf-test.sh \
  --zookeeper localhost:2181 \
  --messages 50000000 \
  --topic test \
  --threads 1
© www.soinside.com 2019 - 2024. All rights reserved.