A customer is developing a custom application that involves a multistep provisioning process for a
new account. There is a custom Java client application that is generating multiple JMS messages
as part of the process and sending them to the WebLogic tier where they are processed.
Which three steps must you take to implement the solution to allow for scalability and parallel
processing of multiple simultaneous provisioning requests while ensuring messages for an
individual process are not delivered out of order?
A.
Update the client application that is creating the JMS messages to use Unit of Work.
B.
Configure a WebLogic Cluster for Distributed JMS.
C.
Update the client application that is creating the JMS messages to use Unit of Order.
D.
Enable XA Transactions on the JMS Connection Factory used by the client application.
E.
Enable Load Balancing on the JMS connection factory used by the client application.
Explanation:
C: Message Unit-of-Order is a WebLogic Server value-added feature that enables a stand-alone
message producer, or a group of producers acting as one, to group messages into a single unit
with respect to the processing order. This single unit is called a Unit-of-Order and requires that all
messages from that unit be processed sequentially in the order they were created.D Transactions required for parallel processing.
Incorrect:
A: Many applications need an even more restricted notion of a group than provided by the
Message Unit-of-Order (UOO) feature. If this is the case for your applications, WebLogic JMS
provides the Unit-of-Work (UOW) Message Groups, which allows applications to send JMS
messages, identifying some of them as a group and allowing a JMS consumer to process them as
such. For example, an JMS producer can designate a set of messages that need to be delivered
to a single client without interruption, so that the messages can be processed as a unit. Further,
the client will not be blocked waiting for the completion of one unit when there is another unit that
is already complete.
Note:
* WebLogic JMS defines two default connection factories, which you can look up using the
following JNDI names:
weblogic.jms.ConnectionFactory
weblogic.jms.XAConnectionFactory
Reference: Using Message Unit-of-Order
BCD
B AND C
no need for xa
http://genericparallel.com/2014/10/unit-of-order-and-osb/
BCD .. talks about 3 steps.. don’t know about the links, but logically if a message is not successfully processed from end to end, the next message shouldn’t be processed, so only XA can ensure that happens.