I'm looking for some advice, please, on possible failover approaches. We have a single standalone ActiveMQ Broker, and both application clients and an application servers connective to the broker via tcp. The messages are non-persistent, and we have persitence turned off on the ActiveMQ Broker. The application server actually resides on the same server as the ActiveMQ server; the clients are coming in over a VPN connection. We have two internet lines coming in - and sometimes we need to swap lines, due to routing problems. Our IT chaps tinker away with some VPN/router settings, and hey presto, the TCP traffic is rerouted over the other line. Sometimes, though not always, it seems this causes the TCP Connections to ActiveMQ to hang (sometimes they go to TCP_WAIT states). Now, obviously I'd rather the connections didn't go belly up - but anecodotally (i.e. through observation, not through proof) they do occasionally do this. How can I set up a fail over scenario here ? Our broker, and all the clietns and servers are configured using URLs; the Broker currently listens on tcp://localhost:61616
The application server connections to the same url (tcp://localhost:61616) The clients connect using a dns-resolved name, (tcp://examplemachine.host.com:61616) I'm actually not bothered if existing messages get lost - what I don't want to do is restart my application server, because we have some lengthy initialisation logic which can take up to half an hour. Would this work (yes, I know I should just try it - but SHOULD this work) : configure two separate ActiveMQ Brokers on the same machine Broker 1 tcp://localhost:61616 Broker 2 tcp://localhost:61700 Configure the clients/application server to use a failover URL : failover://(tcp://examplemachine.host.com:61616,tcp://examplemachine.hos t.com:61616)?randomize=false Would that make any sense ? We're using a snapshopt of ActiveMQ 4.0 from May. Excuse the hurried email that probably doesn't make a great deal of sense; disgruntled clients are applying pressure... Cheers, Charles.
