activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ronK <>
Subject Failover Protocol
Date Tue, 31 Oct 2006 23:46:26 GMT

I am looking for a way to have my clients failover to alternate brokers, use
asynchronous sends, and keep my client code vanilla JMS.
It appears you can't use the failover transport and set connection
properties via the uri at the same time. What I would like to do is combine
failover:(tcp://localhost:61616,tcp://remotehost:61616) with
tcp://localhost:61616?jms.useAsyncSend=true but it doesn't seem to work.
Anyone know if this is supposed to work?

The documentation says:
"The good news is that ActiveMQ sends message in async mode by default in
several cases. It is only in cases where the JMS specification required the
use of sync sending that we default to sync sending. The cases that we are
forced to send in sync mode are when persistent messages are being sent
outside of a transaction."

This doesn't appear to be entirely true because when I attempt to use the
NON_PERSISTENT mode, send() still blocks if no brokers are available. When
this happens I can't shut the program down or notify anyone there is a
problem. Note, the ttl of the message can expire and the send() remains
blocked. If I could somehow stop the send() I could have another thread
monitor it and stop it if necessary. Lots of things seem to block that
shouldn't, you can't build robust software if you can't shut things down and
restart them when you suspect something is out of wack.

View this message in context:
Sent from the ActiveMQ - Dev mailing list archive at

View raw message