Load Balancing High Availability in Clusters
5-6 Oracle Fusion Middleware Deployment Guide for Oracle Service Bus
the distributed queue. The JMS queue for a transport is domain-wide. The task message is enqueued to the distributed queue, which is passed on to the underlying
local queues on the Managed Server. The MDB deployed on the Managed Server picks up the message and then invokes the pipeline in a transaction for actual message
processing.
Since the JMS queues are distributed queues in cluster domains, high availability is achieved by utilizing the Oracle WebLogic Server distributed queue functionality.
Instead of all Managed Servers polling for messages, only one of the Managed Servers in a cluster is assigned the job of polling the messages. At the time of proxy service
configuration, one of the Managed Servers is configured to poll for new files or e-mail messages.
The poller server polls for new messages and puts them to the uniform distributed queue associated with the respective poller transport. From this queue, the message is
passed on the local queue on the Managed Server. The Managed Servers receive the messages through MDBs deployed on all the servers through these local queues.
If the Managed Servers crashes after the distributed queue delivers the message to the local queue, you need to do manual migration. For more information, see
Section 5.1.2.3, Server Migration. When a cluster is created, the uniform distributed queue is created with local queue
members - on all the Managed Servers. However, when a new Managed Server is added to an existing cluster, these local queues are not automatically created. You have
to manually create the local queues and make them a part of a uniform distributed queue.
To create a local queue:
1.
Create a JMS Server and target it to the newly created Managed Server.
2.
Create a local JMS queue, set the redelivery count, and target it to the new JMS server.
3.
Add this local JMS queue as a member of the uniform distributed queue associated with the transport.