Jmeter 动态 JMS 队列名称值不会从 CSV 数据配置中更新

     2023-03-10     158

关键词:

【中文标题】Jmeter 动态 JMS 队列名称值不会从 CSV 数据配置中更新【英文标题】:Jmeter Dynamic JMS queue name values are not updated from CSV Data Config 【发布时间】:2021-12-29 08:41:00 【问题描述】:

我正在尝试使用 Jmeter JMS 执行性能测试,我有一个 csv 文件以表格形式提供测试数据 APPLICATIONAME,SEND_QUEUE,RECV_QUEUE,MSG_TO_SEND 我有大约 300-400 条消息,我的测试计划如下所示

我已经尝试设置属性变量 tqueue_get, tqueue_put 遵循以下帖子 JMeter JMS point to point sampler not taking parameters

的建议

奇怪的是,当我检查日志时,我可以在调试采样器中看到变量 tqueue_get 和 tq​​ueue_put 设置正确,但 JMS 测试采样器要么采用错误的队列名称(好像读取了上一行或其他内容),要么像下面这样根本没有名字

有人能指出我正确的方向吗?

【问题讨论】:

【参考方案1】:

根据JSR223 Sampler 文档:

JSR223 测试元素有一个特性(编译)可以显着提高性能。要从此功能中受益:

使用脚本文件而不是内联它们。如果此功能在 ScriptEngine 上可用,这将使 JMeter 编译它们并缓存它们。 或使用脚本文本并检查缓存已编译的脚本(如果可用)属性。

使用此功能时,请确保您的脚本代码不直接在脚本代码中使用 JMeter 变量或 JMeter 函数调用因为缓存只会缓存第一个替换。而是使用脚本参数。

所以将您的 __setProperty() function 电话替换为以下内容:

props.put('tqueue_put', vars.get('mq_queue_put'))
props.put('tqueue_put', vars.get('mq_queue_get'))

有关这些propsvars 和其他简写的更多信息,请参阅Top 8 JMeter Java Classes You Should Be Using with Groovy

还要注意属性是全局的,因此在并发的情况下,2 个线程将写入同一个队列,因此您可能需要添加 current thread number 作为属性前缀或后缀

【讨论】:

如何在 Jmeter 中使用 JMS Point-to-Point Sampler 将消息发送到 IBM MQ 队列

】如何在Jmeter中使用JMSPoint-to-PointSampler将消息发送到IBMMQ队列【英文标题】:HowcanJMSPoint-to-PointSamplerbeusedinJmetertosendmessagestoanIBMMQqueue【发布时间】:2021-12-1212:10:31【问题描述】:我有一个设置了一些默认队列的本地IBMMQ实例。使... 查看详情

jmeter负载测试从数组变量中获取动态值

】jmeter负载测试从数组变量中获取动态值【英文标题】:jmeterloadtestgettingdynamicvaluesfromarrayvariable【发布时间】:2021-08-0908:08:58【问题描述】:我想在jmeter负载测试中动态处理以下url参数filters=%7B%22TIME_PERIOD_TYPE%22:%5B%22QTD%22%5D,%22COUN... 查看详情

java示例代码_创建一个临时jms队列并按名称连接到它

java示例代码_创建一个临时jms队列并按名称连接到它 查看详情

从 JMS 队列中批量获取

】从JMS队列中批量获取【英文标题】:BatchfetchingfromJMSqueue【发布时间】:2021-10-1604:10:47【问题描述】:我需要实现以下工作流程:每N毫秒从JMS队列中获取所有可用消息,但不超过K个项目做一些处理处理完成后确认所有这些我对... 查看详情

JMS 和 Weblogic 集群

...使用的Weblogic应用程序服务器是集群的。我创建了一个JMS队列,它有一个JNDI名称。当消费者查找jndi名称并将事件发布到队列时,它会发布在两个应用服务器中创建的队列中吗?相同的MDB将在两台服务器上运行-哪一台将消息发布... 查看详情

Camel 和 JMS 以正确的顺序从高级队列中消费消息

】Camel和JMS以正确的顺序从高级队列中消费消息【英文标题】:ConsumingmessageinthecorrectorderfromanAdvancedQueuebyCamelandJMS【发布时间】:2015-12-1305:01:24【问题描述】:我在将ApacheCamel与Oracle高级队列和JMS结合使用时遇到了问题。这是关于... 查看详情

如何使用 Apache Camel 从 Java 类访问 JMS 队列?

】如何使用ApacheCamel从Java类访问JMS队列?【英文标题】:HowcanIaccessaJMSqueuefromaJavaclassusingApacheCamel?【发布时间】:2021-05-1510:49:17【问题描述】:我有一个ApacheCamel中间件来在两个系统之间同步实体。如果实体到达目的地时发生错... 查看详情

jms学习

...的消息是点对点模式,使用这种模式,客户端发送消息到队列目的地,从这个队列里面只有一个消息接收者可以收到那个消息,其他访问同一目的地的接收者不会接收到消息。 查看详情

JMS 动态消息选择

】JMS动态消息选择【英文标题】:JMSDynamicMessageSelection【发布时间】:2021-04-1708:26:54【问题描述】:我有一个包含客户ID和他们的一些数据的消息队列。为了提高性能,这些消息将由多个线程处理。我的问题是我需要找到一种方... 查看详情

如何使用 spring 集成 dsl 从 JMS 队列中解组 XML

】如何使用spring集成dsl从JMS队列中解组XML【英文标题】:HowtoUnmarshallXMLfromJMSqueueUsingspringintegrationdsl【发布时间】:2018-12-2513:17:46【问题描述】:因为我没有足够的声誉来评论关于此问题的其他话题(Howtounmarshallxmlusingspringintegration... 查看详情

从jms到kafka

...及异步性。(2)消息模型P2P:发送端将消息发送到消息队列(使用什么样的消息队列最优?),不用管接收端的行为,接受端只需要去消息队列中取消息,如果 查看详情

如何从 weblogic JMS 队列集群环境中清除/删除消息

】如何从weblogicJMS队列集群环境中清除/删除消息【英文标题】:Howtopurge/deletemessagefromweblogicJMSqueueclusteredenvironment【发布时间】:2013-02-0103:16:28【问题描述】:我在执行以下链接中的程序时遇到问题。Howtopurge/deletemessagefromweblogicJM... 查看详情

JMS 是不是有队列窥视的概念?

】JMS是不是有队列窥视的概念?【英文标题】:DoesJMShaveaconceptofaqueuepeek?JMS是否有队列窥视的概念?【发布时间】:2013-02-2508:49:24【问题描述】:从一般计算机科学的角度来看-当我们从逻辑意义上考虑队列时-我们认为能够“窥... 查看详情

jms

...oint-to-Point(P2P):    每个消息都被发送到一个特定的队列,接收者从队列中获取消息,队列保留着消息,直到他们被消费或超时。  每个消息只有一个消费者,一旦被消费,消息就从消息队列中消失。发送者和接收者在时... 查看详情

每 15 条 JMS 消息卡在队列中,直到第 1 条消息完成

】每15条JMS消息卡在队列中,直到第1条消息完成【英文标题】:every15thJMSmessagestuckinqueuetill1stmessagefinishes【发布时间】:2014-02-2706:05:12【问题描述】:我们面临一个问题,在MDB实例没有完成对第一条消息的处理之前,不会从消息... 查看详情

activemq(04):jms的模型

...PTP模型2.1简介JMSPTP(Point-to-Point)模型定义了客户端如何向队列发送消息,从队列接收消息,以及浏览队列中的消息。 PTP模型是基于队列的,生产者发消息到队列,消费者从队列接收消息,队列的存在使得消息的异步传输成为... 查看详情

Apache ActiveMQ - 检索 JMS 指标

...tarter。我完全是这方面的初学者。我的目标是使用一些JMS队列指标公开Prometheus端点:队列中的消息数错误队列中的消息数检索此类 查看详情

替换 jms 队列中的消息

】替换jms队列中的消息【英文标题】:Replacingamessageinajmsqueue【发布时间】:2010-09-1902:08:58【问题描述】:我正在使用activemq在不同进程之间传递请求。在某些情况下,我在队列中有多个重复的消息(它们是请求)。我想只有一个... 查看详情