当前位置: 首页 > news >正文

kafka消费能力压测:使用官方工具

背景

在之前的业务场景中,我们发现Kafka的实际消费能力远低于预期。尽管我们使用了kafka-go组件并进行了相关测试,测试情况见《kafka-go:性能测试》这篇文章。但并未能准确找出消费能力低下的原因。

我们曾怀疑这可能是由我的电脑网络带宽问题或Kafka部署时的某些未知配置所导致。

为了进一步确定问题的根源,我们决定对Kafka的消费能力进行压力测试。

在这篇《kafka的Docker镜像使用说明:wurstmeister/kafka》文章中我们介绍了基于Docker安装并运行kafka的步骤。

这篇文章中我们重点看一下压测的情况。

压测

kafka消费者压测。

测试命令

kafka-consumer-perf-test.sh --broker-list 172.26.224.165:30001 --topic dreame_mall_log_uat_business --fetch-size 10000 -messages 100000 --threads 1

参数解释

  • broker-list:部署的kafka节点地址。我这里测试的是部署在服务器上的kafka消费性能。
  • topic:指定topic名称
  • fetch-size:指定每个fetch的数据大小,单位字节。
  • messages:总共要消费的消息个数

使用方法

进入容器中,进入命令行工具,到bin目录下,输入上述测试命令。

结果

start.time, end.time, data.consumed.in.MB, MB.sec, data.consumed.in.nMsg, nMsg.sec
2025-02-18 03:52:57:888, 2025-02-18 03:59:35:970, 1732.0945, 4.3511, 100008, 251.2246

输出参数含义 

start.time:开始时间

end.time:结束时间

data.consumed.in.MB:共消费数据,单位MB。如,我们上述的结果,1732.0945MB。        

MB.sec:吞吐量,每秒多少MB。如,我们上述的结果,4.3511MB/s。

data.consumed.in.nMsg:共消费数据。如,我们上述的结果,100008条。

nMsg.sec:平均每秒消费多少条。如,我们上述的结果,251.2246条/s。

结论

通过压测工具的数据和我之前通过kakfa-go组件测试的情况看,kafka消费性能比预期差了很多的原因并不是由kafka-go这个组件导致的,应该是网络带宽限制造成的。  

进一步测试,我本地从WIFI切换到有线网络,消费能力提升了一倍,确定了是我本地计算机网络带宽限制造成的。


http://www.mrgr.cn/news/91474.html

相关文章:

  • java面试场景问题
  • 还在为AI模型部署发愁?VSCode插件让你轻松拥有DeepSeek和近百种AI模型!
  • 【数据分析】1 认识数据分析
  • 同花顺Java开发面试题及参考答案 (上)
  • 【DeepSeek】在本地计算机上部署DeepSeek-R1大模型实战(完整版)
  • 对界面简单易用封装SDK
  • 栈回溯方案
  • who knows the answer
  • 解锁机器学习核心算法 | 支持向量机:机器学习中的分类利刃
  • 下载安装运行测试开源vision-language-action(VLA)模型OpenVLA
  • C语言——深入理解指针(2)(数组与指针)
  • Arm64架构CentOS7服务器搭建Fabric环境
  • Django 5实用指南(二)项目结构与管理
  • 【MySQL安装】
  • TMS320F28335二次bootloader在线IAP升级
  • 云计算架构学习之Ansible-playbook实战、Ansible-流程控制、Ansible-字典循环-roles角色
  • Docker安装Minio对象存储
  • 天翼云910B部署DeepSeek蒸馏70B LLaMA模型实践总结
  • 如何使用 vxe-table grid 全配置式给单元格字段格式化内容,格式化下拉选项内容
  • 小米电视维修记录 2025/2/18