Hi, I have a JBoss AS 7 cluster using the full-ha profile and the hornetq messaging (which is also clustered). The config of hornetq in the domain.xml appears to be a single set of queue definitions that are applied into the messaging subsystem, which is replicated across all servers in the server group using this profile.
What I would like to know is how the queues are actually implemented across the cluster, is there a single queue bucket that any MDB in the cluster might pickup from or is there a bucket for every JBoss server that is hosting the messaging service?
For example if I have a component on JBoss server 1 which sends a message to queue A then waits to receive a message from queue B
and then an MDB which happens to be on JBoss server 2 reads from queue A and posts to queue B
will the MDB on JBoss server 2 be able to read that message from queue A that the component on server1 posted?
is the component on server1 guaranteed to be able to read the message from queue B that the MDB on server2 posted?
Some J2EE servers implement clustered queues with a bucket per server, so when you send a message it gets routed, e.g. via round robin, to one of the buckets and therefore only components on that server are able to read the message.