activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael P. Lum" <m...@mikelum.com>
Subject Demand Forwarding Bridge - changed 4.0.1 to 4.0.2/4.1?
Date Thu, 14 Sep 2006 02:32:55 GMT

I've been running AMQ 4.0.1 in production, using distributed queues and the
failover client protocol.  Basically I have two brokers in each colocation
facility, for example, two in one colo on the west coast, two on the east
coast, two in Europe, two in Asia, etc.  Each of those machines runs a
separate process that is publishing messages to one of those brokers using
the failover client protocol.  We have one colo with a database where there
are two brokers and four consumer machines that are consuming messages off
that queue and saving the messages to a database.

It's working fine in 4.0.1.  But when I staged an upgrade to 4.0.2 (as well
as tried the latest SNAPSHOT of 4.1), now the subscriptions don't seem to
work unless you publish messages to machines in the same facility as the
consumers.  Publishing messages in the other sites don't show up and just
end up overflowing according to JMX.  Also I seem to get messages in the AMQ
log saying that the broker isn't forwarding messages because there are no
subscribers, which is not true because I have 4 subscribers connected to two
brokers in another facility.

It seems like the subscription requests aren't making it to the brokers that
are connected to the consumers.  I haven't changed the networkConnectors
config.  Rolling back to 4.0.1 fixes the problem and the distributed queues
work fine.  I also checked tcpdump and have verified that connectivity
between brokers is fine.

Here is my networkConnectors config if that helps any

 <networkConnectors>
      <networkConnector name="sc-mq-001"
uri="static://(tcp://sc-mq-001.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
      <networkConnector name="sc-mq-002"
uri="static://(tcp://sc-mq-002.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
      <networkConnector name="m-mq-001"
uri="static://(tcp://m-mq-001.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
      <networkConnector name="m-mq-002"
uri="static://(tcp://m-mq-002.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
      <networkConnector name="s-mq-001"
uri="static://(tcp://s-mq-001.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
      <networkConnector name="s-mq-002"
uri="static://(tcp://s-mq-002.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
      <networkConnector name="a-mq-001"
uri="static://(tcp://a-mq-001.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
      <networkConnector name="a-mq-002"
uri="static://(tcp://a-mq-002.XXX.xxx.xxx:61616)" failover="true"
conduitSubscriptions="false" decreaseNetworkConsumerPriority="false"
networkTTL="100"/>
    </networkConnectors>

clients are connecting using a URL like this:
failover:(tcp://m-mq-001.XXX.xxx.xxx:61616,tcp://m-mq-002.XXX.xxx.xxx:61616)

What am I doing wrong?  Or what do I need to change in order to upgrade?

Also the consumers/producers are not looking up the queue in JNDI, they are
calling session.createQueue(String queueName) to create the queue
dynamically.  Not sure if that makes a difference either since it was
working in 4.0.1.  Finally, all brokers same the same networkConnectors
config file, just so that we can use a single config file for our config
management system.  I see a lot of InvalidClientIdExceptions, is that
because both brokers have the same config and try to connect to each other
using the same name?  Is there any workaround for that?

Thanks
-- 
View this message in context: http://www.nabble.com/Demand-Forwarding-Bridge---changed-4.0.1-to-4.0.2-4.1--tf2269266.html#a6298509
Sent from the ActiveMQ - User forum at Nabble.com.


Mime
View raw message