This discussion is archived
4 Replies Latest reply: Mar 25, 2013 7:33 AM by 653697 RSS

Significance of async-enabled option of jms-messaging-bridge

997781 Newbie
Currently Being Moderated
Hi Folks !!

I have a question regarding JMS-MESSAGING-BRIDGES:

What difference will async-enabled = true | false will make to the bridge? Which option will be good from performance point of view ?


Thanks in advance.

Edited by: 994778 on Mar 19, 2013 7:05 AM
  • 1. Re: Significance of async-enabled option of jms-messaging-bridge
    997781 Newbie
    Currently Being Moderated
    The weblogic version being used is wlserver9.2_mp3.
  • 2. Re: Significance of async-enabled option of jms-messaging-bridge
    653697 Journeyer
    Currently Being Moderated
    As you know, the bridge acts as a receiver from the source destination and a sender to the target destination. When async-enabled is set to true, the bridge works as an asynchronous listener to the source destination, while otherwise it acts as a synchronous receiver. In other words, the former is a push mode and the latter is a poll mode. The sync mode does batching while async mode does not. There are a couple of things that you need to consider while determining which mode is better, such as the desired QOS of the bridge, and whether you are bridging between wls destinations or a WLS destination to/from a 3rd party destination. For example, if you requires exactly-once QOS and your source destination is not a WLS JMS destination, you have to use sync mode; actually the bridge internally will switch to sync mode even if you set it to async mode.

    You can find the tuning guide for the messaging bridge at
    http://docs.oracle.com/cd/E17904_01/web.1111/e13814/bridgetuning.htm#g1153237

    Regards,
    Dongbo
  • 3. Re: Significance of async-enabled option of jms-messaging-bridge
    997781 Newbie
    Currently Being Moderated
    Thanks Dangbo for such a detailed reply.

    So, If I understand correctly:

    (QoS=Exactly-One) + (Async-enabled=false) will perform better than
    (QoS=Exactly-One) + (Async-enabled=true)

    Is my understanding correct ?

    Note: Both source & target are weblogic queue destinations.


    Thanks in advance.

    Edited by: 994778 on Mar 25, 2013 1:52 AM
  • 4. Re: Significance of async-enabled option of jms-messaging-bridge
    653697 Journeyer
    Currently Being Moderated
    Your understanding is correct in general. The real performance will depend on your application load, and the batch size and batch interval settings of the bridge. In the sync mode, the bridge will wait for a batch to fill up before it commits a transaction. If your message traffic is slow, the bridge may spend a lot of time waiting. You need to tune your bridge for your application in order to yield the best performance. A bridge in sync mode will also use one thread per bridge instance and if you have a lot of bridge instances, we’ll need to tune your thread pool as well. The details are in the tuning guide.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points