我正在 Java 中使用 ActiveMQ 来记录传入的分析信标。理想情况下,如果队列出现故障或被锁定,我希望尽快失败,在本地记录信标,然后返回到客户端而不挂起,然后尝试稍后重新连接。
使用 ActiveMQ 时该用例的最佳连接 URI 和 URI 参数是什么?
最佳答案
我建议针对您的情况使用 AMQ 的故障转移传输。例如:尝试这种形式的 URL(在 AMQ 版本 5.3 及以上版本中可用):
failover:(tcp://jms.host1:61616,tcp://jms.host2:61616,tcp://jms.host3:61616)?timeout=5000
这仅意味着尝试连接在 jms.host1、jms.host2、jms.host3 上运行的 JMS 代理 5 秒,如果没有可用连接,则向客户端返回错误。如果您的客户端与 jms.host2 失去连接,它还将负责自动故障转移以连接到 jms.host1 或 jms.host3。
查看此页面有关故障转移传输的文档:http://activemq.apache.org/failover-transport-reference.html
关于java - 如果我想快速失败,ActiveMQ 的最佳连接 URI 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5011438/