Jmeter学习之八_测试kafka

jmeter,学习,测试,kafka · 浏览次数 : 22

小编点评

**Jmeter Kafka 验证方法总结** 1. **新建测试计划** 2. **创建测试线程组** 3. **添加kafka Producer Config**:配置kafka生产者的配置信息,包括broker地址、端口、topic等 4. **添加kafka producer Sampler**:获取来自kafka生产者的数据,并将其存储到结果树中 5. **添加查看结果树的监听器**,并将结果显示在图形中 6. **设置聚合报告**,汇总并显示kafka数据统计信息 7. **设置jp@gc**,并监控kafka生产者发送的数据数量 8. **执行测试**,观察结果并分析数据趋势 **配置注意事项** * 线程组的线程数可以根据需要调整,但要注意机器的配置,不要宕机 * kafka Producer Config的security Type 设置为SASL_PLAINTEXT,需要设置additional configs * kafka Producer Sampler的messages设置可以自己设置,例如{"Message": "It's a Hello from DI Kafka Sampler!"}

正文

Jmeter学习之八_测试kafka


背景

最近在持续学习. 
昨天学习了grafana展示Jmeter测试数据库的结果
今天想着能够测试一下kafka验证一下kafka的吞吐量等信息
说干就干的. 

遇到的坑

本来计划使用pepper-box 或者是 kafkameter进行相关的测试工作
但是发现资料都比较陈旧,耗费了非常多的时间(晚上九点到晚上十二点)
都没有彻底搞定. 最后换用了: https://github.com/rollno748/di-kafkameter
这个插件仲可以可以进行数据验证了. 

kafka安装相关

我这边使用的是 kafka 3.5 并且没有使用zookeeper 使用的是kraft的方式进行安装.
为了安全采用了比较简单的 sasl_plaintext 方式进行验证. 

也许也是因为还是用了 sasl_plaintext的方式以及kraft的方式导致很多网上的资料都不可用. 
解决问题之后想着能够总结一下. 

Jmeter插件

安装一个jmeter的插件. 
DI KafkaMeter
理论上这一个插件就可以了. 

测试过程

1. 新建一个测试计划
2. 新增加测试线程组
3. 在线程组处新增一个 kafka Producer Config (列别: 配置元件)
4. 在线程组处新增一个 kafka producer Sampler (类别: 取样器)
5. 新增一个查看结果树的监听器,新增一个聚合报告,以及 jp@gc 的设置
6. 执行一下运行,就可以进行相关查看了. 

配置注意事项-线程组

注意测试线程组可以设置为时间模式的
因为kafka瞬间就可以将所有的消息发出去, 观测起来会比较费劲. 

线程数可以稍微多一些进行验证. 但是注意机器的配置, 不要宕机. 
循环次数设置为 永远, 调度器 设置为 持续时间 120秒进行观察不错

配置注意事项-Kafka Producer Config

注意 Kafka broker 设置为自己的地址
其他内容可以不动

最关键的地方时 security 
Type 选择为: SASL_PLAINTEXT
默认值都不需要动
但是需要再 Additional Configs 处新增两个配置节:
sasl.mechanism  value: PLAIN
sasl.jaas.config value: org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="xxxx" ;
注意 jaas.config的配置节的值里面有一个分号, 不要忘记了. 

保存就可以了. 

配置注意事项-Kafka Producer Sampler

这个比较简单,
只需要注意将kafka topic 设置为 kafka中存在的就可以了. 
然后可以在messages 里面设置上:
{"Message": "It's a Hello from DI Kafka Sampler!"}

其实这个值是可以自己设置的. 
zhaobsh test kafka study server
可以在kafka内部使用如下命令:
bin/kafka-console-consumer.sh --bootstrap-server 192.168.174.131:9093  --consumer.config config/sasl.conf --topic zhaobsh01
进行监控, 会发现:
zhaobsh test kafka study server
zhaobsh test kafka study server
zhaobsh test kafka study server
Processed a total of 5480780 messages

就可以将自己设置的值打印出来了. 

查看结果等

可以新增 结果树, 聚合报告, 以及 jp@gc - Transactions per Second
可以看到一些好玩的结果以及数据
比如下图

效果图

image


学习来源:

https://github.com/rollno748/di-kafkameter
https://github.com/rollno748/di-kafkameter/wiki#producer-elements

非常感谢原作者的分享

欢迎关注我的公众号一起学习进步

image

与Jmeter学习之八_测试kafka相似的内容:

Jmeter学习之八_测试kafka

# Jmeter学习之八_测试kafka ## 背景 ``` 最近在持续学习. 昨天学习了grafana展示Jmeter测试数据库的结果 今天想着能够测试一下kafka验证一下kafka的吞吐量等信息 说干就干的. ``` ## 遇到的坑 ``` 本来计划使用pepper-box 或者是 kafka

[转帖]Jmeter学习笔记(八)——监听器元件之聚合报告

https://www.cnblogs.com/pachongshangdexuebi/p/11507298.html 1、聚合报告添加 聚合报告是常用的监听器之一,添加路径: 点击线程组->添加->监听器->聚合报告 2、聚合报告界面及说明 Label:请求的名称,就是我们在进行测试的httpre

Jmeter学习之四_kingbaseV8R6数据库的简单验证

# Jmeter学习之四_kingbaseV8R6数据库的简单验证 ## 背景 ``` 周一没去报道, 因为我忘记体检了... 继续在家进行学习提高自己. jmeter周末时开始看的. 今天想着继续研究一下对数据库的处理 突然发现人大金仓的官方csdn有一个文档, 所以想着偷师,并且总结学习一下.

Jmeter学习之五_跟踪被测试服务器的performance

# Jmeter学习之五_跟踪被测试服务器的performance ## 背景 ``` 这几天简单学习了一些基本的测试过程. 可以实现一些简单基本的功能了. 今天晚上继续进行了jmeter的一些学习. 想着可以在测试人大金仓的同时可以查看一下本地的机器性能. ``` ## 用到的工具以及资料 ```

Jmeter学习之七_使用influxdb2.7和grafana10进行Jmeter测试结果展示的方法

# Jmeter学习之七_使用influxdb2.7和grafana10进行Jmeter测试结果展示的方法 ## 摘要 ``` 前几天验证了 线程组内的-监听器 jp@gc 相关的组件 以及验证了 server-agent的方式可以监控机器的性能表现. 但是发现很多结果集是比较杂乱 并且不太好查看的

Jmeter学习之六_进行https证书处理的工作

# Jmeter 进行https证书处理的工作 ## 背景 ``` 继续学习中,想着能够抓取一下https相关的信息 所以计划些一下处理过程 但是感觉自己这一块比较薄弱. 场景设计这一块应该是专业人去搞, 我这边先只是简单学习了解一下. ``` ## 创建证书 ``` 要使用 keytool 工具创

[转帖]jmeter学习笔记(二十二)——监听器插件之jp@gc系列

一、jp@gc - Actiive Threads Over Time 不同时间活动用户数量展示 下面是一个阶梯加压测试的图标 二、jp@gc - Transactions per Second ,即TPS:每秒事务数 性能测试中,最重要的2个指标之一。该插件的作用是在测试脚本执行过程中,监控查看服

[转帖] Jmeter学习笔记(七)——监听器元件之察看结果树

https://www.cnblogs.com/pachongshangdexuebi/p/11507289.html 在jmeter中,如果我们需要查看请求结果就需要添加查看结果树,这个监听器元件有那些功能呢? 一、察看结果树界面如下 二、察看结果树界面功能说明 1、所有数据写入文件 (1)文件名

[转帖]Jmeter学习笔记(十九)——后置处理器之正则表达式的使用

https://www.cnblogs.com/pachongshangdexuebi/p/11733005.html 一、正则表达式提取器的作用 允许用户从服务器的响应中通过使用perl的正则表达式提取值。作为一个后置处理器,该元素会作用在指定范围的取样器,应用正则表达式,提取所需要的值,生成模板

[转帖]badboy与jmeter的结合使用

`https://blog.csdn.net/weixin_41754309/article/details/107106855` 欢迎关注【无量测试之道】公众号,回复【领取资源】, Python编程学习资源干货、 Python+Appium框架APP的UI自动化、 Python+Selenium框