jmeter发送kafka数据key错误且无法生成时间戳解决方案「建议收藏」

jmeter发送kafka数据key错误且无法生成时间戳解决方案「建议收藏」前言:最近在做kafka、mq、redis、fink、kudu等在中间件性能压测,压测kafka的时候遇到了一个问题,我用jmeter往kafka发消息没有时间戳,同样的数据我用python发送就有时间戳,且jmeter会自动生成错误的变量key,那我是怎么解决的呢,容我一一道来!一、jmeter怎么往kafka发送数据jmeter往kafka发送数据我之前有写过博客,大家可以参考下,遇到我前言说的问题就可以参考本篇文章二、jmeter生成错误key解决方案我们用了kafka插件后jmeter中引入

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言:最近在做kafka、mq、redis、fink、kudu等在中间件性能压测,压测kafka的时候遇到了一个问题,我用jmeter往kafka发消息没有时间戳,同样的数据我用python发送就有时间戳,且jmeter会自动生成错误的变量key,那我是怎么解决的呢,容我细细道来!

一、jmeter怎么往kafka发送数据

jmeter往kafka发送数据我之前有写过博客,大家可以参考下,遇到我前言说的问题就可以参考本篇文章

二、jmeter生成错误key解决方案

我们用了kafka插件后jmeter中引入界面展示如下:
在这里插入图片描述
${PARAMETER_KAFKA_KEY}我们可以改为其他参数,这个是没有问题的,但是我项目kafka不需要key这个参数,当时我想填空值的,没想到填了空值后一运行jmeter后${PARAMETER_KAFKA_KEY}就自动填充进去了,导致发送到kafka的数据就多了一个错误的key
在这里插入图片描述
这个时候我们就需要找到kafka插件的jar包源码,修改一下源码重新生成jar包
在这里插入图片描述
只要把第156行的defaultParameters.addArgument(PARAMETER_KAFKA_KEY, "${PARAMETER_KAFKA_KEY}");修改为defaultParameters.addArgument(PARAMETER_KAFKA_KEY, null);就大功告成了
在这里插入图片描述
我用的编译器是常用的java神器之idea,这个工具打包jar包大家可以参考这篇文章
在这里插入图片描述
打包成功
在这里插入图片描述
将自己打的jar在jmeter的lib/ext目录下进行替换后发现界面展示默认就是空值了
在这里插入图片描述
发送的数据key也是显示正常的,kafka里面没有key信息展示了
在这里插入图片描述

三、jmeter生成kafka数据没有时间戳

上面的问题解决了,但是又发现一个新的问题,jmeter生成kafka数据没有时间戳,这可是不行的,毕竟我项目需要用到时间戳这个字段数据入库kudu
在这里插入图片描述
之前我用python脚本发送的数据是正常的,用jmeter就不正常了,我查阅了jmeter kafka jar包的相关资料,发现这插件一般都是和jmeter的后端监听器一起用的,是不是因为我没有引入这个jar包呢?我按着这个思路尝试了一下,把jmeter.backendlistener.kafka-1.0.1.jar包引入到了jmeter的lib/ext目录下,发现数据顿时正常了,大家需要这个jar可以去这里下载
在这里插入图片描述

四、开始愉快的压测之旅

在这里插入图片描述

五、疑问解答与加群学习交流

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183898.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • for循环中执行顺序_顺序结构选择结构循环结构

    for循环中执行顺序_顺序结构选择结构循环结构今天刷题碰到的一个坑,就是没有注意到for循环的每次判断条件导致的**,也就是for循环的第二句**,每次循环都会执行该判断条件。for循环的表达式一般如下:for(表达式1;表达式2;表达式3){表达式4;}执行的顺序为:第一次循环首先执行表达式1(一般为初始化语句,只执行一次),再执行表达式2(条件判断语句),判断表达式1是否符合表达式2的条件,如果符合,则执行表达式4,……

    2025年7月1日
    3
  • (python源码,详细注解 )多目标粒子群算法 mopso

    (python源码,详细注解 )多目标粒子群算法 mopso1本代码功能用多目标粒子群算法(mopso)寻找pareto最优解集2算法介绍2.1简单步骤:(1)初始化群体粒子群的位置和速度,计算适应值(2)根据pareto支配原则,计算得到Archive集(存放当前的非劣解)(3)计算pbest(4)计算Archive集中的拥挤度(5)在Archive集选择gbest(6)更新粒子的速度、位置、适应值(7)更新Archive集(还要注意防止溢出)(…

    2022年5月2日
    71
  • python-opencv图像处理:sobel算子

    python-opencv图像处理:sobel算子Sobel原理:https://blog.csdn.net/zfjBIT/article/details/86655444函数原型:”’Sobel算子Sobel算子依然是一种过滤器,只是其是带有方向的。在OpenCV-Python中,使用Sobel的算子的函数原型如下:dst=cv2.Sobel(src,ddepth,dx,dy[,dst[,ksize[,s…

    2022年7月14日
    16
  • 信道容量计算公式_信道均衡算法

    信道容量计算公式_信道均衡算法信道带宽=符号率*符号数*(188/204)注释:符号率&lt–&gt频宽(下行欧标频宽8MHz,上行有1.6MHz,3.2MHz,6.4MHz三种频宽);符号数&lt–&gt调制方式(符号数=Log2~调制方式,如QAM64的符号数为6,2的6次方=64)=====================================================…

    2022年8月31日
    5
  • Pytest(8)parametrize参数化「建议收藏」

    Pytest(8)parametrize参数化「建议收藏」前言当某个接口中的一个字段,里面规定的范围为1-5,你5个数字都要单独写一条测试用例,就太麻烦了,这个时候可以使用pytest.mark.parametrize装饰器可以实现测试用例参数化。官方示

    2022年7月28日
    8
  • nessus8.15激活成功教程_etc怎么看激活成功了没有

    nessus8.15激活成功教程_etc怎么看激活成功了没有0x01下载NESSUS官网https://www.tenable.com/downloads/nessus离线插件all:https://plugins.nessus.org/offline

    2022年8月6日
    22

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号