2 Replies Latest reply on Oct 22, 2013 5:04 AM by Radoslav Husar

    Using Hornetq grouping-handler in a JBoss cluster with full-ha profile

    janeg Newbie

      Hi I am trying to configure the Hornetq grouping-handler into a JBoss AS 7 cluster which uses the full-HA profile.


      The profile in domain.xml by default contains a single clustered hornetq server (lets call it H1):


      <subsystem xmlns="urn:jboss:domain:messaging:1.1">




      I am assuming this behaves to replicate the horneq server across the JBoss servers which belong to my server-group that uses the full-HA profile

      So if Ihave 2 JBoss servers S1 and S2, the hornetq server H1 is replicated to each one.


      My understanding to configure grouping-handler I need to have

      1. hornetq server entry containing this:

         <grouping-handler name="my-grouping-handler">



      2. the remaining hornetq server entries containing this:

         <grouping-handler name="my-grouping-handler">



      The only way I see to achieve this is to replicate the <hornetq-server> entry n times within the

      <subsystem xmlns="urn:jboss:domain:messaging:1.1"> tag in the domain.xml, specifying LOCAL in only one entry and REMOTE in the others, so I will end up with H1, H2...etc.


      What I do not understand is how this will achieve the intended behaviour for grouping-handler.

      It is my understanding the intention by the LOCAL and REMOTE from the Hornetq manual is that you should have the following at runtime:

      S1 - with H1 (LOCAL)

      S2 - with H2 (REMOTE)

      S3 - with H3 (REMOTE)


      but given the behaviour observed in the intial full-ha profile with only H1, it seems that is more likely to be like this

      S1 - with H1 (LOCAL), H2 (REMOTE), H3(REMOTE)

      S2 - with H1 (LOCAL), H2 (REMOTE), H3(REMOTE)

      S3 - with H1 (LOCAL), H2 (REMOTE), H3(REMOTE)


      I am rather confused. Please can someone help and advise how the grouping-handler is supposed to be configured within the domain.xml so that it will function as designed?


      Additionally if I am using a connection factory in a stateless session bean running in one of the cluster servers to send out messages which I want to use this grouping-handler facility, then I would want to have the message potentially routed to any one of H1, H2 or H3, which I am expecting reside on S2, S2 or S3, so does that mean I have to use a netty connector with my pooled connection factory?