9 Replies Latest reply on Jan 26, 2007 3:06 PM by timfox

    JBoss Messaging 1.2 deployment in cluster

    rcjboss

      Hi,

      Can JBoss Messaging 1.2 be delpoyed as cluster of 2 servers, but in an Active/Passive mode (only one server active at a time)?

      So, I am not load-balancing, but I need a hot failover.

      I want to be using only one node as active, but i would want the second node to be on a hot standby mode for a automatic failover.

      Will this be supported in the production version of 1.2?

      Thanks

        • 1. Re: JBoss Messaging 1.2 deployment in cluster
          timfox

          Why do you only want one node to be active at once?

          How would it harm your application it both were active?

          • 2. Re: JBoss Messaging 1.2 deployment in cluster
            rcjboss

            We are using JMS IDs for sequencing, so if we have 2 nodes in JBoss JMS cluster setup, then because the way JMS ID generation is implemented for JBoss Msg 1.2 (each node gets a block of JMS IDs), the sequence will be lost if 2 nodes process requests in parallel.
            To avoid this scenario and still to have an automated failover, i am looking into it.

            Either way it will be good to know if there is an option to deploy Active/Passive way.

            Thanks

            • 3. Re: JBoss Messaging 1.2 deployment in cluster
              timfox

               

              "rcjboss" wrote:
              the sequence will be lost if 2 nodes process requests in parallel.


              It shouldn't. Please can you explain what you mean in more detail. The id block functionality is designed to work no matter how many nodes are in the cluster.

              • 4. Re: JBoss Messaging 1.2 deployment in cluster
                rcjboss

                Sorry, here are more details:
                There is no issue with the JMS ID implementation of JBoss Msg 1.2.

                Only problem is it does not help us in our specific requirement, which goes like this:
                1. We want to make sure that each msg getting into the queue has a Sequence Number.
                2. We need to make sure that this sequence number is real sequence as who ever posted the message first should get a sequence number that is lower to the one who posts the msg next.
                3. The JBossMsg1.2 implementation gives sequence numbers in blocks to each node (1to256 to node1, 257-xxx to node2).
                4. In this case we could end-up on node 2 and would get a sequence number for a msg that came in earlier to be higher than the request that came to node1 at a later time.

                Please confirm that my understanding is correct about the implementation.

                • 5. Re: JBoss Messaging 1.2 deployment in cluster
                  timfox

                  A JMS message id is just supposed to be unique. That's it.

                  Do not infer anything else into it, it would be very bad practice to do so.

                  We could change the format at any point.

                  • 6. Re: JBoss Messaging 1.2 deployment in cluster
                    rcjboss

                    Agreed,
                    But can you please provide an indication as:
                    "if there is/will an option to deploy Active/Passive way"

                    Thanks

                    • 7. Re: JBoss Messaging 1.2 deployment in cluster
                      timfox

                      Why do you want to deploy active/passive?

                      Why not just have multiple servers active?

                      • 8. Re: JBoss Messaging 1.2 deployment in cluster
                        rcjboss

                        :)

                        Reason: Available h/w resources.
                        We have one dedicated physical server for running JBoss msg. Another physical server that hosts existing JBoss instance running some application. We want to use this second server runnign a passive JBossMsg instance. So in case when the dedicated JBossMsg goes down, then the second shared server can take the load temporarily automatically, till we bring back the dedicated up again.
                        Oher reason would be that we bring down the dedicated JBossMsg server for OS level patching, essentially minimizing the app downtime and increase availablity.

                        • 9. Re: JBoss Messaging 1.2 deployment in cluster
                          timfox

                          Ok, that makes sense.

                          Well.. right now we don't support active passive. But I can't see it would be too difficult to enable. Basically you need the HA part but not the clustering part.

                          Could you add a JIRA task and schedule it against 1.2.1?

                          Thanks.