|[ Team LiB ]|
We have explored the fundamental concepts involved with messaging services and examples in the context of BEA WebLogic JMS-based messaging services in this chapter. Messaging services provide a means for message producers to send messages to message consumers in an asynchronous and time-independent fashion. Message consumers can also pull messages from a messaging service at their convenience, receive messages directly queued to them from a messaging service, or receive messages to which they've subscribed based on a topic name. Messaging services provide all of this functionality in a manner that enhances the underlying reliability and availability of applications that tap their services.
Although various MOM implementations can be used for messaging in Java applications, JMS provides a standard Java-based messaging API and SPI framework that can be used to tap into different messaging implementations. Furthermore, JMS is part of the J2EE standard suite of enterprise components. JMS offers a core and generic API that can be used to send and receive messages in a generic fashion, independent of any particular messaging domain model. JMS also has APIs that are derived from the core and generic JMS API to provide domain-specific messaging behavior for point-to-point messaging via message queues and publish-subscribe messaging via message topics. JMS is clearly the most generic and standard way to infuse MOM functionality into your J2EE applications.
Finally, BEA WebLogic Server 8.1 not only provides the JMS API and a means for hooking into external JMS providers, but also provides an enterprise class JMS provider implementation itself. In addition to such rich support for JMS, WebLogic also provides an easy to use administration interface into the configuration and deployment of JMS servers and destinations. With BEA WebLogic Server 8.1, you are not only provided with a rich array of standard JMS-based enterprise messaging features, but also a messaging infrastructure that's ready to run and easy to configure straight out of the box.
|[ Team LiB ]|