5 Replies Latest reply on Dec 23, 2009 12:41 AM by the.finder1

    Bridge between multiple jboss instances

      Environment:

      jboss version: jboss-4.2.2.GA

      jbm version:  jboss-messaging-1.4.2.GA-SP1

       

      I create a jboss instance (called bridge server) to link multiple jboss instances (called s0, s1, s2, ...),and I deploy many bridges on the server, each bridge is responsible for move messages between s0 and s1 (called bridge_0_1), or between s0 and s2 (called bridge_0_2), or between s0 and s3 (called bridge_0_3), etc.

      Note that s0 is local server, but s1, s2, ... is on WAN with low speed.

       

      I find that when cannot connect to s1, bridge_0_1 still ping every 10000 ms,  but other bridges cannot work (no messages about connect succeeded or failed).

       

      By the way, I find the same problem which is duplicate to JBMESSAGING-1648, I wonder when this bug will be fixed.

        • 1. Re: Bridge between multiple jboss instances
          gaohoward

          Hi can you post your bridge service configure file here? What do you mean by 'When cannot connect to s1, bridge_0_1 still ping every 10000 ms? are you saying the bridge still trying to reconnect? do you have any log?

           

          Make sure all your jboss instances have unique server peer ids.

           

          About JBMESSAGING-1648, I have problem reproducing it, can you give some advice on how to reproduce it?

           

          Thanks,

          Howard

          • 2. Re: Bridge between multiple jboss instances

            I post an example with four nodes: bridgeserver, s0, s3, s9, and bridgeserver, s0 is local server, s3, s9 is remote server.

            The bridge config file is attched by appendix.

            1. jms-bridge-service.xml config the JMSProvider connect to s0

            2. jms-bridge-3-service.xml config the JMSProvider connect to s3, and two bridges between s0 and s3.

            3. jms-bridge-9-service.xml config the JMSProvider connect to s9, and two bridges between s0 and s9.

            The relative destinations is: topic/SiteSOT, queue/SiteSOQ, queue/SiteROQ。

            All these config files is deployed on bridgeserver.

             

            s0, s3, s9 is standalone jboss, not clustered.

            All SeverPeerID of s0, s3, s9 is 0,not unique, because when QualityOfServiceMode=1, the SeverPeerID need not to be unique.

             

            Did these configurations wrong? Can these bridges work well?

             

            I have a test, a few hours later, I found several messages in queue cannot be transfered to other part, and no more information

            in logs showing what there are doing, even if I set the logLevel of package org.jboss.jms to TRACE.

            • 3. Re: Bridge between multiple jboss instances

              I overview the source code of Bridge, found that it is not suitable for me,

              because:

              1. The setupJMSObjects() function is started at the main thread, when I have more bridges, jboss started too long time.

              2. I need not transaction, it results in low efficiency, especially on bindwidth less that 2Mbps, and the QualityOfServiceMode = ONCE_AND_ONLY_ONCE is really poisonous, it results in blocking.

               

              So I write my only bridge to do this,  it works fine.

              • 4. Re: Bridge between multiple jboss instances
                gaohoward

                Hi,

                 

                Just let you know there is a new bug fix and I think this might be the underlying reason of you bridge issue.

                 

                https://jira.jboss.org/jira/browse/JBMESSAGING-1776

                 

                Howard

                • 5. Re: Bridge between multiple jboss instances
                  Thanks, I will try it.