我正在使用ActiveMQ(5.7)故障转移。我想减少应用程序在决定无法连接到代理之前等待的最长时间,然后移动到下一个代理。根据{{3}},这可以通过maxReconnectDelay实现,默认为30,000(毫秒)。但是,这似乎不起作用。例如,使用以下内容仍然意味着在尝试一个代理和尝试下一个代理之间会有30秒的延迟。
failover:(tcp://host1:61616,tcp://host2:61616)?maxReconnectDelay=2000
我是否误解了配置,或者这是否有误?如何让应用程序尽快尝试第二个代理?
答案 0 :(得分:3)
您应该使用ConnectionTimeOut属性每个主机,如下所示:
failover:(tcp://host1:61616?connectionTimeout=1000,tcp://host2:61616connectionTimeout=1000)
这将使连接在一秒内超时到每个已定义的主机。