Interoperation with WebSphere MQ: Comparison of architectures

The three different ways that you can send messages between WebSphere® Application Server and a WebSphere MQ network are compared at a high level, showing the relative advantages and disadvantages of each approach.

WebSphere MQ as an external messaging provider

The WebSphere MQ messaging provider does not use service integration. It provides JMS messaging access to WebSphere MQ from WebSphere Application Server.The WebSphere MQ messaging provider makes point-to-point messaging and publish/subscribe messaging available to WebSphere Application Server applications using the existing capabilities in the WebSphere MQ environment. WebSphere Application Server applications can interact with WebSphere MQ queues and topics to send, receive, publish, and subscribe to messages in the same way as any JMS application in the WebSphere MQ environment.

Using WebSphere MQ as an external messaging provider requires more WebSphere MQ administration, less WebSphere Application Server administration.

Table 1. Advantages and disadvantages of WebSphere MQ as an external messaging provider
Advantages Disadvantages
  • You do not have to configure a service integration bus or messaging engines.
  • You can connect directly to WebSphere MQ queue managers.
  • You manage a single JMS messaging provider rather than two.
  • You can connect to queue managers in client mode or bindings mode.
  • You can use point-to-point messaging and publish/subscribe messaging.
  • You can exploit WebSphere Application Server clusters.
  • If you are using message-driven beans, performance is lower.
  • Interaction between WebSphere Application Server and WebSphere MQ is not seamless.
  • You cannot use mediations for modifying messages, for routing, or for logging.

A WebSphere MQ network as a foreign bus (using WebSphere MQ links)

A WebSphere MQ link provides a server to server channel connection between a service integration bus and a WebSphere MQ queue manager or queue-sharing group, which acts as the gateway to the WebSphere MQ network.When you use a WebSphere MQ link, the messaging bus is seen by the WebSphere MQ network as a virtual queue manager, and the WebSphere MQ network is seen by service integration as a foreign bus. A WebSphere MQ link allows WebSphere Application Server applications to send point-to-point messages to WebSphere MQ queues (defined as destinations in the service integration bus), and allows WebSphere MQ applications to send point-to-point messages to destinations in the service integration bus (defined as remote queues in WebSphere MQ). The link also allows WebSphere Application Server applications to subscribe to messages published by WebSphere MQ applications, and WebSphere MQ applications to subscribe to messages published by WebSphere Application Server applications. The link ensures that messages are converted between the formats used by WebSphere Application Server and those used by WebSphere MQ.

Using a WebSphere MQ network as a foreign bus (using WebSphere MQ links) requires more WebSphere Application Server administration, less WebSphere MQ administration.

Table 2. Advantages and disadvantages of a WebSphere MQ network as a foreign bus (using WebSphere MQ links)
Advantages Disadvantages
  • A WebSphere MQ client facility is not required on the gateway WebSphere MQ queue manager.
  • Each end of the link appears in natural form to the other; WebSphere MQ appears to service integration to be a (foreign) bus, service integration appears to WebSphere MQ to be a (virtual) queue manager.
  • Better performance over the link is possible when compared with WebSphere MQ servers or direct connection to WebSphere MQ as an external JMS messaging provider.
  • A managed connection from one node to another is created, but not from every application server in the cell.
  • You do not have to define individual WebSphere MQ queues to the service integration bus.
  • Good security support is provided. For example, you can control which users are allowed to put messages onto queues.
  • WebSphere Application Server and WebSphere MQ can exist on separate hosts.
  • Interaction between WebSphere Application Server and WebSphere MQ is seamless.
  • You can configure a publish/subscribe bridge, through which WebSphere Application Server applications can subscribe to messages published by WebSphere MQ applications, and WebSphere MQ applications can subscribe to messages published by WebSphere Application Server applications.
  • You can join publish/subscribe domains across the service integration bus and WebSphere MQ.
  • You must configure a service integration bus and messaging engines.
  • You cannot connect to queue managers in bindings mode.
  • Optimum load balancing is less easy to achieve because messages have to be "pushed" from either end of the link.
  • You cannot use mediations for modifying messages, routing, or logging.

A WebSphere MQ server (a queue manager or queue-sharing group) as a bus member

A WebSphere MQ server provides a direct client connection between a service integration bus and queues on a WebSphere MQ queue manager or (for WebSphere MQ for z/OS) queue-sharing group. For interoperation with WebSphere Application Server Version 7 or later, the version of WebSphere MQ must be WebSphere MQ for z/OS Version 6 or later, or WebSphere MQ (distributed platforms) Version 7 or later. A WebSphere MQ server supports the high availability and optimum load-balancing characteristics provided by a WebSphere MQ for z/OS network. A WebSphere MQ server defines the connection and quality of service properties used for the connection, and also ensures that messages are converted between the formats used by WebSphere Application Server and those used by WebSphere MQ. A WebSphere MQ server only represents queues for point-to-point messaging; it does not represent topics for publish/subscribe messaging.

Using a WebSphere MQ server (a queue manager or queue-sharing group) as a bus member requires more WebSphere Application Server administration, less WebSphere MQ administration.

Table 3. Advantages and disadvantages of a WebSphere MQ server (a queue manager or queue-sharing group) as a bus member
Advantages Disadvantages
  • WebSphere Application Server and WebSphere MQ can exist on separate hosts.
  • Each end of the connection appears in natural form to the other; WebSphere MQ queue manager appears to service integration to be a foreign bus, service integration appears to WebSphere MQ to be a client.
  • Close integration of applications is possible; service integration applications are able to consume messages directly from the WebSphere MQ network.
  • You can connect to queue managers in client mode or bindings mode.
  • You can use mediations for modifying messages, routing, or logging.
  • Good security support is provided. For example, you can control which users are allowed to put messages onto queues.
  • You can get messages from WebSphere MQ queues (GET).
  • Interaction between WebSphere Application Server and WebSphere MQ is seamless.
  • Queues on the WebSphere MQ network are automatically discovered.
  • You must configure a service integration bus and messaging engines.
  • The queue managers and queue-sharing groups must be accessible from all the messaging engines in the bus.
  • A topic for publish/subscribe messaging cannot be represented as a WebSphere MQ server.
  • WebSphere MQ for z/OS Version 6 or later, or WebSphere MQ (distributed platforms) Version 7 or later, is a prerequisite.
  • If you are using different nodes with WebSphere MQ for z/OS, depending on the number of nodes and your version of WebSphere MQ for z/OS, you might require the Client Attachment feature (CAF) on z/OS.
  • You must explicitly define all destinations.



Related concepts
Interoperation with WebSphere MQ
Concept topic    

Terms of Use | Feedback

Last updated: Oct 22, 2010 12:21:29 AM CDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=compass&product=was-nd-zos&topic=cmm_comp_arch
File name: cmm_comp_arch.html