Figure 4.3. ActionBazaar ordering after MOM was introduced. Messaging enables both fast customer response
times and reliable processing.
In this situation, messaging is improving reliability by decoupling the order confirmation
process from the actual processing of the shipping request. The reliability stems from the
fact that ActionBazaar's and Turtle's servers don't have to be up and running at the same
time. Also, the servers aren't expected to function at the same processing rate. Because
MOM systems persist messages and will resend messages if a connection is lost midstream,
shipping requests aren't lost if Turtle's servers suddenly become unreachable. In addition,
MOM systems ensure additional reliability by incorporating transactions and acknowledg-
ments for both message delivery and receipt.
Looking toward future expansion, the decoupling achieved through messaging is useful in
other ways as well. For example, other shipping providers could connect to ActionBazaar's
MOM server instead of or in addition to Turtle. This reduces Action-Bazaar's dependency
on a single shipping company and orders can be processed by whatever shipping company
is available at the time.
4.1.3. Messaging models
A messaging model is a pattern defining how senders and consumers exchange messages.
JMS uses two standard models: point-to-point (PTP) and publish-subscribe. An application