1

我正在使用 ActiveMQ 5.15.4,我的代理配置为 openwire 连接,如下所示:

<transportConnector name="openwire" uri="tcp://0.0.0.0:24510?transport.useInactivityMonitor=false&amp;transport.keepAlive=true"/>

...以确保我在 TCP 或 ActiveMQ 级别都没有超时。然后我的 ActiveMQ-cpp-3.9.4 客户端连接到以下故障转移 URL:

failover://(tcp://amq:24510)?soKeepAlive=true&wireFormat.maxInactivityDuration=0

...以确保如果网络中断导致传输失败,客户端将自动重新连接。

客户端建立其初始连接并在几个“传输失败/传输恢复”故障转移周期中幸存下来,但始终如一地在几分钟内遇到无法恢复的传输故障(尽管网络正在恢复并且代理和客户端继续运行)。

客户端不发送任何消息,它只是订阅一个没有消息的主题。感觉像是超时,但我的理解是我的上述配置不应该发生超时。

任何想法为什么我的客户在失败后可能无法恢复传输?

4

1 回答 1

0

似乎他们用 3.9.5 解决了这个问题,其中更改信息说他们解决了故障转移机制的问题。

于 2019-08-08T14:53:19.160 回答