2013-02-08 71 views
1

我正在使用ActiveMQ(5.7)故障转移。我想减少应用程序在决定代理无法连接之前等待的最长时间,然后转到下一个代理。根据ActiveMQ fail-over reference,可以通过maxReconnectDelay实现,默认值为30,000(毫秒)。但是,这似乎并不奏效。例如,使用以下代码仍然意味着在尝试一个代理和尝试下一代理之间需要30秒的延迟。ActiveMQ故障转移:如何设置最大重新连接延迟

failover:(tcp://host1:61616,tcp://host2:61616)?maxReconnectDelay=2000 

我误解了配置,或者这是错误的?如何让应用程序尽快尝试第二个经纪人?

+0

我认为你需要ConnectionTimeout属性 – 2013-02-17 12:43:50

回答

3

您应该使用ConnectionTimeout属性每台主机这样的:

failover:(tcp://host1:61616?connectionTimeout=1000,tcp://host2:61616connectionTimeout=1000) 

这将超时一秒到每个定义的主机连接。

+0

谢谢,我会给你一个去。 'maxReconnectDelay'仅仅是在初始连接之后的故障切换延迟之后呢? – Spycho 2013-02-17 16:58:02

+0

@Spycho“我们在重新连接尝试之间等待的最长时间(以毫秒为单位)” – 2013-02-18 08:50:35

相关问题