使用kafka自带脚本进行压力测试

简介: 使用kafka自带脚本进行压力测试

前言

kafka官方自带压力测试脚本:

  • 消费者压力测试:kafka-consumer-perf-test.sh
  • 生产者压力测试:kafka-producer-perf-test.sh

测试节点:

  • 172.50.13.103
  • 172.50.13.104
  • 172.50.13.105

生产者压力测试

/home/web/kafka/bin/kafka-producer-perf-test.sh --topic test --record-size 100 --num-records 100000 --throughput -1 --producer-props bootstrap.servers=172.50.13.103:9092,172.50.13.104:9092,172.50.13.105:9092

命令参数说明:

  • --topic:主题名
  • --record-size:单条消息的数据大小,单位字节
  • --num-records:总消息数
  • --throughput:每秒消息数,-1表示不限制
  • bootstrap.servers:节点和端口

结果:

100000 records sent, 42337.002540 records/sec (40.38 MB/sec), 465.00 ms avg latency, 1121.00 ms max latency, 392 ms 50th, 1023 ms 95th, 1110 ms 99th, 1120 ms 99.9th.

结果说明:

  • 吞吐量:40.38 MB/sec
  • 每次写入的平均延迟:465.00 ms
  • 最大延迟:1121.00 ms

将近0.5秒的写入延迟,算是比较低的性能了。

消费者压力测试

/home/web/kafka/bin/kafka-consumer-perf-test.sh --broker-list 172.50.13.103:9092,172.50.13.104:9092,172.50.13.105:9092 --topic=test --fetch-size 10000 -messages 100000 --threads 1

命令参数说明:

  • --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
2021-04-27 15:35:34:005, 2021-04-27 15:35:35:429, 13.6017, 9.5517, 100000, 70224.7191, 1619508934406, -1619508932982, -0.0000, -0.0001

结果说明:

  • 共消费数据13.6017 MB
  • 吞吐量:9.5517 MB/sec
  • 总共消费消息量:100000
  • 平均每秒消费:70224.7191 nMsg/Sec

平均每秒消费数也比较低。

相关文章
|
2月前
|
Java Shell
「sh脚步模版自取」测试线排查的三个脚本:启动、停止、重启、日志保存
「sh脚步模版自取」测试线排查的三个脚本:启动、停止、重启、日志保存
43 1
|
1月前
|
存储 监控 测试技术
测试脚本编写和维护的最佳实践有哪些?
测试脚本编写和维护的最佳实践有哪些?
117 50
|
4月前
|
测试技术 数据库
自动化测试的救赎:揭秘代码复用的艺术,让测试脚本涅槃重生!
【8月更文挑战第21天】自动化测试对提升软件质量和开发效率至关重要,但其维护成本随项目规模增长而上升。采用代码复用策略能显著减轻这一负担。本文概述了自动化测试中实现代码复用的方法,包括抽象与封装、模块化、参数化、继承及利用测试框架等,以减少重复劳动、提高代码质量与开发速度,并简化维护流程。掌握这些策略将助力构建高效、可维护的自动化测试体系。
69 5
|
26天前
|
SQL 测试技术 API
如何编写API接口的自动化测试脚本
本文详细介绍了编写API自动化测试脚本的方法和最佳实践,涵盖确定测试需求、选择测试框架、编写测试脚本(如使用Postman和Python Requests库)、参数化和数据驱动测试、断言和验证、集成CI/CD、生成测试报告及维护更新等内容,旨在帮助开发者构建高效可靠的API测试体系。
|
1月前
|
存储 监控 前端开发
如何确保测试脚本的稳定性和可靠性?
确保测试脚本的稳定性和可靠性是保证性能测试结果准确有效的关键
|
1月前
|
监控 网络协议 Java
一些适合性能测试脚本编写和维护的工具
一些适合性能测试脚本编写和维护的工具
|
1月前
|
测试技术 数据库连接 数据库
测试脚本的编写和维护对性能测试结果有何影响?
测试脚本的编写和维护对性能测试结果有着至关重要的影响,
28 1
|
1月前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
自动化测试与脚本编写:Python实践指南
37 1
|
2月前
|
消息中间件 大数据 Java
大数据-55 Kafka sh脚本使用 与 JavaAPI使用 topics.sh producer.sh consumer.sh kafka-clients
大数据-55 Kafka sh脚本使用 与 JavaAPI使用 topics.sh producer.sh consumer.sh kafka-clients
32 2
|
2月前
|
消息中间件 中间件 Kafka
解锁Kafka等消息队列中间件的测试之道
在这个数字化时代,分布式系统和消息队列中间件(如Kafka、RabbitMQ)已成为日常工作的核心组件。本次公开课由前字节跳动资深专家KK老师主讲,深入解析消息队列的基本原理、架构及测试要点,涵盖功能、性能、可靠性、安全性和兼容性测试,并探讨其主要应用场景,如应用解耦、异步处理和限流削峰。课程最后设有互动答疑环节,助你全面掌握消息队列的测试方法。
下一篇
DataWorks