zoukankan      html  css  js  c++  java
  • Kafka压力测试(官方自带)

    1、Kafka压测

    用Kafka官方自带的脚本,对Kafka进行压测。Kafka压测时,可以查看到哪个地方出现了瓶颈(CPU,内存,网络IO)。

    一般都是网络IO达到瓶颈。

    kafka-consumer-perf-test.sh

    kafka-producer-perf-test.sh

    2、Kafka Producer压力测试

    在.../kafka/bin目录下

    [duoduo@hadoop100 kafka_2.11-2.4.0]$ bin/kafka-producer-perf-test.sh --topic test --record-size 100 --num-records 100000 --throughput -1 --producer-props bootstrap.servers=hadoop100:9092,hadoop102:9092,hadoop101:9092

    说明:

    • record-size:一条信息有多大,单位字节
    • num-records:总共发送多少条信息
    • throughput:每秒多少条信息,设置成-1,表示不限流,可测生产者最大吞吐量

    结果:

    100000 records sent, 27495.188342 records/sec (2.62 MB/sec), 1461.75 ms avg latency, 2183.00 ms max latency, 1696 ms 50th, 2103 ms 95th, 2177 ms 99th, 2181 ms 99.9th.

    解析:

    • 一共写入10万条消息
    • 吞吐量为2.62 MB/sec
    • 每次写入的平均延迟为1461.75ms
    • 最大延迟2183.00 ms

    3、Kafka Consumer 压力测试

    consumer测试,如果这四个指标(IO,CPU,内存,网络)都不能改变,考虑增加分区数来提升性能

    [duoduo@hadoop100 kafka_2.11-2.4.0]$ bin/kafka-consumer-perf-test.sh --broker-list hadoop100:9092 --topic test --fetch-size 10000 -messages 10000000 --threads 1

    参数说明:

    • broker-list:节点地址
    • topic:指定topic名称
    • fetch-size:指定每个fetch的数据大小
    • messages:总共要消费的消息个数

    结果:

    start.time, end.time, data.consumed.in.MB, MB.sec, data.consumed.in.nMsg, nMsg.sec, rebalance.time.ms, fetch.time.ms, fetch.MB.sec, fetch.nMsg.sec

    2020-06-27 13:17:57:490, 2020-06-27 13:18:11:751, 20.0272, 1.4043, 210000, 14725.4751, 1593235077858, -1593235063597, -0.0000, -0.0001

    解释:

    • 开始时间
    • 结束时间
    • 共消费数据:20.0272M
    • 吞吐量:1.4043MB/s
    • 共消费数据:210000条
    • 平均每秒消费:14725.4751条

    4、Kafka机器数量计算

    Kafka机器数=2 *(峰值生产速度 * 副本数 / 100)+1

    比如:峰值生产速度为50M/s,副本为2

    Kafka机器数=2*(50*2/100)+1=3(台)

  • 相关阅读:
    创建可按比例调整的布局的 Windows 窗体
    Visual C# 2010 实现资源管理器
    Visual C# 2010 实现菜单项和状态栏
    使用异步事件在后台进行计算并报告进度
    A Byte of Python(简明Python教程) for Python 3.0 下载
    面向对象思想
    封装变化(二)
    好玩,看你的博客价值几何?
    基于消息与.Net Remoting的分布式处理架构
    设计之道
  • 原文地址:https://www.cnblogs.com/hyunbar/p/13198174.html
Copyright © 2011-2022 走看看