2 Replies Latest reply on Jul 3, 2007 2:16 PM by ramat123

    Single node queue to distributed queue across cluster

    mackennad

      We have installed JBoss Messaging 1.2 on a 5 node cluster - swapped out the JBoss MQ from the instance of the servers and replaced it with jboss-messaging 1.2 .

      We are running under JBoss 4.0.5GA. JDK is 1.4.2_13. Fedora 4.

      We have a client that writes to a queue on one of the nodes in a cluster, a pool of Message Driven Beans pick up messages from the queue and process the same. This works on a single node within a cluster. No issues there.

      The message driven beans are deployed in their own Jar. The jar file is placed in the deploy directory on one of the nodes.

      We then moved this jar file to the farm directory. The jar replicated across the nodes in the cluster. The queues are available on individual nodes within the cluster as each node of the cluster has its own jboss-messaging-scoped.jar. The MDBS are deployed correctly. But the queue is not visible to the MDBs deployed on other nodes within the cluster.

      The question now is how do we distribute the queue across nodes in the cluster. Is there specific changes that need to be made in the configuration files to enable message bean instances to pick up messaged from the distributed queue


      The queue is defined in jboss-messaging-scoped.sar. We modified destination-service.xml. Added the following

      <mbean code="org.jboss.jms.server.destination.Queue"
      name="jboss.messaging.destination:service=Queue,name=TradeInfoQueue"
      xmbean-dd="xmdesc/Queue-xmbean.xml">
      <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer








      To sum it up - if the queue is created on a single node, MDB deployed to that single node ( min 15 max 30 ) client deployed on same node. Everything works great !

      But when we run this within the cluster, everything deploys with no error, but the queue is not distributed and the MDBs deployed symmetrically across the cluster do not pick up messages.

      Any pointers