I have been searching through the archives and found quite a few posts
re duplicate messages. None I have seen seem to fit the situation we
have here.
System is ActiveMQ 5.0.0 on SuSE 9.0.
We have scaled up from 1 to 4 servers, with two identically configured
machines (A and B) feeding messages into the 3rd and 4th machines (C and
D) which among other things stores the messages in a database. Messages
from C and D are sent back to A and B for management and status purposes.
The networkConnectors configurations are shown below.
Machine D is not turned on and machine B is on but idle (not providing
any messages). All clients are connecting with a stomp client that has
proved reliable in a single ActiveMQ configuration. In fact the whole
application has been running fine on a single machine.
When we send messages to /topic/DBS at machine A, two identical copies
are presented to the consumers machine C.
I am contemplating writing simple bridge clients to connect the ActiveMQ
instances and workaround this but I would much rather ActiveMQ do the
heavy lifting.
We tried 5.1.0 briefly but we were having trouble with connections
dropping out so we didn't persist.
Any clues on what we might be doing wrong would be most appreciated.
cheers
A and B networkConnnectors:
<networkConnectors>
<networkConnector
uri="static://(tcp://hostC:61616)?initialReconnectDelay=10000"
name="${activemq.host}-bridge00" dynamicOnly="false">
<dynamicallyIncludedDestinations>
<topic physicalName="DBA"/>
<topic physicalName="DBS"/>
<topic physicalName="MANAGEMENT"/>
<topic physicalName="RAC"/>
<topic physicalName="DAN"/>
</dynamicallyIncludedDestinations>
</networkConnector>
<networkConnector
uri="static://(tcp://hostD:61616)?initialReconnectDelay=10000"
name="${activemq.host}-bridge01" dynamicOnly="false">
<dynamicallyIncludedDestinations>
<topic physicalName="DBA"/>
<topic physicalName="DBS"/>
<topic physicalName="MANAGEMENT"/>
<topic physicalName="RAC"/>
<topic physicalName="DAN"/>
</dynamicallyIncludedDestinations>
</networkConnector>
</networkConnectors>
And on C & D:
<networkConnectors>
<networkConnector
uri="static://(tcp://hostA:61616)?initialReconnectDelay=10000"
name="${activemq.host}-bridge00" dynamicOnly="false">
<dynamicallyIncludedDestinations>
<topic physicalName="MANAGEMENT"/>
<queue physicalName="HOT"/>
<queue physicalName="SENSE"/>
</dynamicallyIncludedDestinations>
</networkConnector>
<networkConnector
uri="static://(tcp://hostB:61616)?initialReconnectDelay=10000"
name="${activemq.host}-bridge01" dynamicOnly="false">
<dynamicallyIncludedDestinations>
<topic physicalName="MANAGEMENT"/>
<queue physicalName="HOT"/>
<queue physicalName="SENSE"/>
</dynamicallyIncludedDestinations>
</networkConnector>
</networkConnectors>