As I understand it, when you use failover around the AMQ URL and the named broker(s) is/are not available, the send blocks. The latest AMQ release 5.3 has support for timeouts using this notation:
failover:(tcp://primary:61616)?timeout=3000 This is a new release that I have not tried yet. Besides, we are releasing UIMA AS with AMQ 4.1.1 support and our code should be backwards compatible. Having said that, I had problems with correct failover behaviour with 4.1.1 while 5.2 worked fine. On Thu, Oct 29, 2009 at 2:26 PM, Jörn Kottmann <kottm...@gmail.com> wrote: > Jaroslaw Cwiklik wrote: > >> Initially this is exactly what I thought of doing. But we need finer level >> of control. Dont want to be stuck in the AMQ send method until the broker >> becomes available. Instead the code will silently retry connection >> indefinitely similar to Spring Listener's waitUntilSuccessfull() >> > In our system we plan to use a Pure Master Slave > ActiveMQ Broker. In the case the Master fails the > clients just reconnect to the Slave. > > More information can be found here: > http://activemq.apache.org/pure-master-slave.html > > The broker URL for this configuration looks like this: > failover://(tcp://masterhost:61616,tcp://slavehost:61616)?randomize=false > > If the code retires to connect it must be able to detect > that the broker is not available, maybe the send method > just throws an exception, which is then handled. > Does non-blocking sending in case of an error also work > if "failover" is used ? > > Jörn > > >