如果重要的话,我正在使用ActiveMQ CPP 5.2.3。
我有使用故障转移传输连接到JMS经纪人网络的JMS生产者。 当我调用connection-> start()时,它会挂起(请参阅AMQ-2114)。
如果我跳过连接 start()并调用connection-> createSession(),则此调用也会被阻止。
要求是我的应用程序将永远尝试连接到代理。
有任何建议/解决方法吗?
注意:
这不是here的重复,因为我说的是C ++,而嵌入式代理,spring等解决方案在C ++中不可用。
答案 0 :(得分:4)
当连接等待连接到代理的传输时,这是正常的。 start方法必须在任何其他操作之前将客户端的id信息发送给代理,因此如果不存在连接,则必须阻止。您可以在故障转移传输上设置一些选项,例如startupMaxReconnectAttempts选项,以控制在报告故障之前尝试连接的时间。请参阅URI配置页面: