gpt4 book ai didi

c++ - ActiveMQ 3.8.3 (CPP) priorityBackup 不工作的问题

转载 作者:太空宇宙 更新时间:2023-11-04 13:42:48 25 4
gpt4 key购买 nike

我对主动 MQ 有点陌生,所以请多多包涵。

我正在尝试为我的一些 Java 和 CPP 应用程序利用 ActiveMQ 优先级备份功能。我在两个不同的服务器(本地和远程)上有两个代理,我希望我的应用程序具有以下行为。

  1. 始终在启动时连接到本地代理
  2. 如果本地代理出现故障,连接到远程
  3. 当连接到远程时,如果本地恢复正常,我们将重新连接到本地。

通过简单地将 priorityBackup 添加到我的 uri 选项,我已经成功地在 java 应用程序上对其进行了测试IE。 故障转移:(tcp://local:61616,tcp://remote:61616)?randomize=false&priorityBackup=true

然而,CPP 方面的进展并不顺利。

以下在 CPP 应用程序上运行良好(具有基本的工作故障转移功能 - 即在本地出现故障时跳转到远程)

故障转移:(tcp://local:61616,tcp://remote:61616)?randomize=false

但是使用 priorityBackup 更新 uri 选项似乎完全破坏了故障转移功能(我的应用程序永远不会故障转移到远程代理,它们只是在本地代理出现故障时保持某种无代理/边缘状态) 故障转移:(tcp://local:61616,tcp://remote:61616)?randomize=false&priorityBackup=true

我在这里遗漏了什么吗?我应该包括的额外 uri 选项?

更新:传输连接器信息

<transportConnectors>
<transportConnector name="ClientOpenwire" uri="tcp://0.0.0.0:61616?wireFormat.maxInactivityDuration=7000"/>
<transportConnector name="Broker2BrokerOpenwire" uri="tcp://0.0.0.0:62627?wireFormat.maxInactivityDuration=5000"/>
<transportConnector name="stompConnector" uri="stomp://0.0.0.0:62623"/>
</transportConnectors>

最佳答案

backuppriorityBackup 参数在库的 Java 和 C++ 实现中以完全不同的方式处理。Java 实现运行良好,但不幸的是 C++ 实现被破坏了。没有可以解决此问题的额外选项。需要对库进行重大更改才能解决此问题。

我正在使用 activemq-cpp-library-3.8.3 和各种版本(5.10.0、5.11.1)的代理测试这个问题。问题未在 3.8.4 版本中修复。

关于c++ - ActiveMQ 3.8.3 (CPP) priorityBackup 不工作的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27114156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com