I'm trying to setup a cluster of Brokers (standalone) which clients can
connect to (ideally I would like them to be discovered)
listening to a TOPIC. In the case of a broker failing, the clients connected
to that broker should reconnect to another broker.

I'm able to get clients to connect to a random broker (given a static list),
but when I kill a broker, clients connected to that broker die with the
following exception:

Feb 23, 2007 4:28:47 PM
org.apache.activemq.transport.failover.FailoverTransport
handleTransportFailure
INFO: Transport failed, attempting to automatically reconnect due to:
java.net.SocketException: Connection reset java.net.SocketException:
Connection reset
       at java.net.SocketInputStream.read(Unknown Source)
       at
org.apache.activemq.transport.tcp.TcpBufferedInputStream.fill(TcpBufferedInputStream.java:49)
       at
org.apache.activemq.transport.tcp.TcpBufferedInputStream.read(TcpBufferedInputStream.java:56)
       at java.io.DataInputStream.readInt(Unknown Source)
       at
org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
       at
org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
       at
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
       at java.lang.Thread.run(Unknown Source)

Also restarting the broker and the disconnected clients the restarted
clients don't get messages from the other clients.

The clients are using the following URL to connect:
java.naming.provider.url=static://(tcp://host1:61616,tcp://host2:61616)?failover=true


The brokers are configured with the following

host1:
   <transportConnectors>
      <transportConnector name="openwire" uri="tcp://host1:61616"
discoveryUri="multicast://default"/>
   </transportConnectors>
   <networkConnectors>
     <networkConnector name="host1 and host2"
uri="static://(tcp://host1:61616,tcp://host2:61616)" failover="true"/>
   </networkConnectors>


host2:
   <transportConnectors>
      <transportConnector name="openwire" uri="tcp://host2:61616"
discoveryUri="multicast://default"/>
   </transportConnectors>
   <networkConnectors>
     <networkConnector name="host1 and host2"
uri="static://(tcp://host1:61616,tcp://host2:61616)" failover="true"/>
   </networkConnectors>



Is there something obvious that I'm missing.
Also is there possible to use similar clients using the .NET API?

Thanks,

Gaurav Hariani



-- 
View this message in context: 
http://www.nabble.com/Network-Cluster-of-Brokers---Please-help-tf3293180s2354.html#a9159928
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to