【问题标题】:JMeter JMS Point to Point not returning correct responseJMeter JMS点对点不返回正确响应
【发布时间】:2014-07-03 02:05:33
【问题描述】:

JMeter 版本:2.10。 ActiveMQ 5.9

我有一个点对点 JMeter 脚本,它成功地将消息放入队列。然后,此消息将被使用、转换并放置在不同的队列中。当我只测试一个请求方法(来自jmeter)时,消息已成功提交、转换并返回到输出队列,但是当我将JMeter配置为使用输出队列上的响应时,它将原始请求消息有效负载显示为响应.

这是我的 JMeter 脚本详细信息:

  1. JMS 资源

    • QueueuConnectionFactory:ConnectionFactory
    • JNDI 名称请求队列:Q.REQ
    • JNDI 名称回复队列:Q.RPL
  2. 消息属性

    • 沟通方式:请求响应
    • 使用备用字段进行消息关联:使用请求消息 ID(勾选)
    • 内容:(XML 有效负载)
  3. JNDI 属性

    • InitialContextFactory:org.apache.activemq.jndi.ActiveMQInitialContextFactory
    • queue.Q.REQ:message.in
    • queue.Q.RPL:message.out
    • java.naming.security.principal:管理员
    • java.naming.security.credentials: 管理员
  4. 属性

    • 提供者网址:tcp://localhost:61616

我还尝试了一些不同的组合,例如删除回复队列和指定 JMSReplyTo 以及手动指定 JMSCorrelationID。如果有人能指出我正确的方向,甚至提供一个有效的 jmeter proj 示例,将不胜感激。我还使用了这个指南:http://jmeter.apache.org/usermanual/build-jms-point-to-point-test-plan.html 来帮助构建我的测试。

【问题讨论】:

    标签: jms jmeter activemq


    【解决方案1】:

    在与一些人交谈后,这是一个已知问题,我目前还没有找到适合此问题的解决方法。

    目前,我必须使用 JMeter JMS Pub/Sub Samplers 才能使其正常工作。如果我收到用户组的回复,我将相应地更新此答案。

    【讨论】:

      【解决方案2】:

      您在 JNDI 属性 部分中似乎缺少 Q.REQQ.RPL 定义。它们应该与 InitialContextFactory 位一起使用。

      有关详细信息,请参阅Building a JMS Testing Plan - Apache JMeter 指南。

      【讨论】:

      • 抱歉更新了我的错字。 Q.REQ 和 Q.PRL 在 JNDI 属性中都指定为:queue.Q.REQ:message.in,queue.Q.RPL:message.out。另外,感谢您的指南,但它几乎复制了 jmeter 网站上的指南。
      猜你喜欢
      • 2012-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-06
      相关资源
      最近更新 更多