ActiveMQ-cpp:尽管进行了故障转移,但连接丢失



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

<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

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

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

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

知道为什么我的客户端在失败后可能不会恢复传输吗?

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

最新更新