Mule ActiveMQ 连接器不会重新连接到 Amazon MQ 负载均衡器

Mule ActiveMQ Connector does not reconnect to Amazon MQ Load Balancer

我们正在将消息队列从本地解决方案迁移到 Amazon MQ。在每周维护重新启动后,我们带有队列侦听器的 Mulesoft 应用程序无法重新连接到 Amazon MQ 负载均衡器 URL。我们在本地 ActiveMQ 解决方案中没有这个问题。

<jms:listener doc:name="Listener" destination="${queue.destination}" config-ref="JMS_CONFIG"/>

<jms:config name="JMS_CONFIG" doc:name="JMS Config">
    <jms:active-mq-connection username="${queue.user.name}" password="${queue.password}">
        <reconnection >
                <reconnect-forever blocking="false" frequency="15000"/>
        </reconnection>
        <jms:factory-configuration brokerUrl="${jms.broker.url}" />
    </jms:active-mq-connection>
</jms:config>

<jms.connector.version>1.7.1</jms.connector.version>
<!-- Tested version 1.7.3 as well. -->

无效:

jms.broker.url=ssl://broker-name.domain.net:61617

解决方法:

jms.broker.url=failover:(ssl://worker-1.mq.us-east-1.amazonaws.com:61617,ssl://worker-2.mq.us-east-1.amazonaws.com:61617)

有没有办法让负载均衡器 url 正常工作? 我们希望在两个 Amazon MQ worker 之间平衡流量。

与工作人员一起使用 failover url 解决此问题意味着重新连接被委托给 ActiveMQ JMS 客户端实现而不是 Mulesoft。这表明问题出在 Mulesoft 的重新连接功能上。尝试使用 jms.broker.url=failover:(ssl://broker-name.domain.net:61617)。这将是一个更好的解决方法,因为它将使用 Amazon MQ 负载均衡器。