【问题标题】:JMeter publisher with ActiveMQ failover URL具有 ActiveMQ 故障转移 URL 的 JMeter 发布者
【发布时间】:2020-04-20 00:48:54
【问题描述】:

我有多个线程组用于使用 JMeter 发布者采样器将消息推送到 ActiveMQ。我的 JMeter 发布者采样器配置了 ActiveMQ 故障转移 URL。当我启动 JMeter 时,无论故障转移如何,它都会将消息推送到两个 ActiveMQ。

采样器使用 ActiveMQ JNDI 初始上下文工厂 (org.apache.activemq.jndi.ActiveMQInitialContextFactory)

提供者网址:failover:(tcp://host1:61616,tcp://host2:61616)

连接工厂只是 ActiveMQ 提供的默认连接工厂:ConnectionFactory

目的地是我们要在其中生成消息的 JMS 队列的名称,前缀为 dynamicQueuesdynamicQueues/MyQueue

【问题讨论】:

    标签: jmeter activemq


    【解决方案1】:

    根据Failover Transport documentation

    使用随机化

    故障转移传输默认随机选择一个URI。这有效地通过多个代理对客户端进行负载平衡。但是,要让客户端首先连接到主代理,并且仅在主代理不可用时连接到辅助备份代理,请设置 randomize=false

    所以我的期望是,当您使用多个线程(虚拟用户)运行测试时,每个线程都会向随机代理发送消息。

    如果您想针对第一个代理并仅在第一个代理失败时使用第二个代理 - 考虑将 ?randomize=false 参数附加到您的故障转移 URL,例如:

     failover:(tcp://host1:61616,tcp://host2:61616)?randomize=false
    

    更多信息以防万一:Building a JMS Testing Plan - Apache JMeter

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-01
      • 2017-02-04
      • 2010-11-06
      • 2016-08-28
      • 2016-05-19
      • 1970-01-01
      • 2012-06-04
      相关资源
      最近更新 更多