Skip to main content

Software  >  Tivoli  >  CCR2  > 

CCR2

A publication for the IBM System z software community

Tivoli software


Connecting System z applications with IBM WebSphere MQ on z/OS
from CCR2, Issue 12 - 2007

Dermot Flaherty

By Dermot Flaherty
Senior technical staff member and lead architect
IBM WebSphere MQ product and technologies


You can connect your core System z-hosted applications (CICS, IMS, WAS, Batch) to other System z or distributed applications, including those of your business partners, in many ways. Product architect Dermot Flaherty describes one of the more flexible solutions available to you today – IBM WebSphere MQ for z/OS – and its recent enhancements.

A growing awareness of service oriented architecture (SOA) has led many IBM clients to view connectivity as a key aspect of delivering business services. Using and reusing services in new solutions provides flexibility and deployment speed to meet changing business needs.

When you invest in the IBM System z platform, you are also investing in an ongoing opportunity to reuse mainframe assets more effectively. IBM WebSphere MQ for z/OS provides a standard way to deliver inter-process communications between your applications running on CICS, IMS, IBM WebSphere Application Server for z/OS, Batch or TSO.

WebSphere MQ, a market leader in message-oriented middleware, provides messaging-based connectivity between applications on all the major computing platforms (more than 40), including IBM z/OS, Linux for IBM System z, Linux, Microsoft Windows, IBM AIX, IBM System i and Sun Solaris.

This connectivity extends the reach of your mainframe applications to business data both inside and outside of your enterprise, which lets you extract more value from your mainframe assets.

Reliable messaging backbone
In 2006, IBM defined five entry points to help you get started with SOA. One of these is the connectivity entry point. A messaging backbone can form the foundation of this connectivity to let you:

  • Connect any applications to any other applications on any computing platform.
  • Enable a loosely-coupled application model that allows application deployment changes without necessarily changing the applications themselves.
  • Deliver guaranteed qualities-of-transport service, such as reliable message delivery and transaction integrity.

With its proven reliability and loosely-coupled programming style, WebSphere MQ naturally provides flexibility and support for your move toward SOA. IBM estimates that more than ten thousand IBM clients use WebSphere MQ in more than 80 platform configurations. MQ networks are used in a wide variety of ways with some carrying trillions of dollars of business data every day. The nature of the data also varies enormously, ranging from high-value money transfers through order-entry updates to file data.

Flexible MQI programming
WebSphere MQ provides a simple, yet functionally-rich application programming interface (API), known as the Message Queue Interface (MQI), across MQ-supported computing platforms, and it fully implements the industry-standard Java Message Service (JMS) interface. These interfaces support application-to-application communication through message queues and allow applications to remain indifferent to queue location and queue processing.

In the MQI programming model, a sending application puts (or "pushes") messages onto a queue, and receiving applications get (or "pull") the messages off the queue. This PUT/GET style of application communication gives you great flexibility in creating application interaction patterns that can range from pseudo-synchronous request-and-response styles to fire-and-forget styles and mixtures of both. By combining the two patterns, you can take advantage of additional processing capability to enable parallel execution and improve overall throughput.

Reliable business data delivery
WebSphere MQ provides reliable message delivery to help ensure that the business data is properly propagated between applications by using well-proven transactional techniques that ensure that message data is delivered once and once-only.

In application environments such as CICS, IMS, WebSphere Application Server and Batch on z/OS, where the generation or consumption of the message data needs to be performed as part of a larger transaction – involving a DB2 update, for example – WebSphere MQ fully supports the appropriate transaction coordinators to ensure the atomicity of the entire transaction.

For example, a CICS transaction can read an MQ message and update a DB2 row as a complete atomic action in one unit of work. As another example, an IMS transaction can create an MQ message and update a DL/I database, also in a single unit of work.

Other key WebSphere MQ capabilities include:

  • Support for data of any type and size, including huge files.
  • Message retrieval can be either sequential or directed.
  • Applications can be started upon message receipt.
  • A WebSphere MQ message can include information on the location of the pulling application, independent of the application.

High availability with WebSphere MQ
WebSphere MQ provides two complementary methods to provide high availability of message data and support for workload balancing across the System z processing environments, including:

  • Clustering – a platform-neutral technique that can be thought of as workload balancing supporting a "push" model
  • Sysplex shared queues – a capability unique to the z/OS environment that can be thought of as supporting the “pull” workload balancing model.

WebSphere MQ clustering is a widely used technique for spreading message data seamlessly among multiple queue instances to support parallel processing.
In this manner, cloned applications can each access their own message data “partition,” such that if the application or its execution environment fails, the other partitions are still available, even while the message data in the failed partition remains unavailable until the partition is restarted.

For the highest possible availability of message data combined with horizontal scalability, Sysplex shared queues provide message data that can be accessed from any environment within a Sysplex, so they are independent of application or LPAR failure. In this case, the WebSphere MQ peer recovery function will provide automatic resolution of inflight message data in the event of failures.

Implicit access to CICS and IMS
CICS and IMS transactions can use MQ’s Message Queue Interface (MQI) to get explicit access to WebSphere MQ message data, but WebSphere MQ also provides implicit access by bridge technology. As a result, CICS and IMS transactions that are written to expect their input from (and direct their output to) terminals, can be driven by message data. This approach greatly extends the reach and usability of your CICS and IMS assets.

To continue developing this capability, IBM recently enhanced the CICS-MQ adapter, the CICS-MQ trigger monitor and the CICS-MQ bridge to support CICS Transaction Server version 3.2 in these ways:

  • Threadsafe MQ connectivity components can use CICS open trusted computing bases (TCBs). This doesn’t require TCB switching, saves CPU time and eliminates bottlenecks.
  • Improved diagnostics, including use of CICS facilities for system trace, dump formatting and messages.
  • Improved statistical information available through the IBM CICSPlex System Manager Web user interface, such as connections usage between CICS and WebSphere MQ, and the type and success of calls.

WebSphere MQ at the heart of your ESB
A messaging backbone and enterprise service bus (ESB) technology can work together to deliver information to applications and services in an SOA environment. WebSphere MQ connects disparate applications reliably and flexibly, but it does not understand the application data it carries.

An ESB, on the other hand, can understand the message data and take actions based on data values, enrich data from external sources, and transform data and protocols as needed for integrating disparate applications and platforms.

IBM's three ESB solutions for IBM System z users – IBM WebSphere Message Broker for z/OS, IBM WebSphere Enterprise Service Bus (ESB) for z/OS and IBM WebSphere DataPower Integration Appliance XI50 – all support IBM WebSphere MQ’s messaging backbone. Building an ESB with WebSphere MQ at its heart lets your mainframe applications access and process business data from a wide variety of sources in a wide variety of formats.

Connect WebSphere MQ and the Web
With the growing use of SOAP messages in Web service interactions requires reliable delivery of SOAP service invocations. WebSphere MQ V6 lets you send SOAP messages reliably over an MQ network to invoke services hosted by CICS or WebSphere Application Server.

Using MQ instead of HTTP allows full asynchronous service interaction, which in turn supports patterns where requests can be long-running and also scenarios where two partners are not necessarily running at the same time.

In addition, many IBM clients are looking to Web 2.0 standards as a way to rapidly deliver dynamic new applications with business-appropriate qualities of service. The recently available MA0Y SupportPac for WebSphere MQ V6 adds an HTTP bridge to let AJAX and RESTful Web services developers use WebSphere MQ as a service to leverage its reach to enterprise computing platforms.

Ensure secure and auditable access to business data
Security is a key concern for many WebSphere MQ clients, especially when opening up mainframe processing to distributed services. WebSphere MQ provides Secure Sockets Layer (SSL) support for secure message transmission over the WebSphere MQ network and on z/OS.

Access control to the message queues and related WebSphere MQ objects is provided through the System Authorization Facility (SAF), letting you control all command and administration access through IBM Resource Access Control Facility (IBM RACF), ACF/2, Top Secret or other z/OS security management products.

Additionally, if your implementation requires complete end-to-end message encryption, IBM WebSphere MQ Extended Security Edition delivers this support.

Tap into your mainframe assets with WebSphere MQ
IBM WebSphere MQ for z/OS provides a rich set of features to extend the reach of your mainframe CICS, IMS, WAS and Batch assets and allow them to be of wider use in an SOA world.

For more information
IBM WebSphere MQ for z/OS
Podcast: Connecting core applications in a highly available, scalable, and secure way
Whitepaper: Increase the value of CICS applications with WebSphere MQ

Related links
The Mainstream
Business journal for the System z community
Tivoli Beat
Weekly updates on the IBM service management perspective
IBM software for System z
The power to drive an enterprise
IBM Tivoli software
Intelligent management software for the on demand world
Tivoli Software Global User Group Community
Join your peers in our information and community hub
Open Process Automation Library
OPAL is Tivoli's worldwide online catalog with hundreds of technically validated, production ready IT Service Management integrated extensions provided by IBM and IBM Tivoli Business Partners.
We're here to help
Easy ways to get the answers you need.
Request a quote
E-mail IBM

Or call us at:
877-426-3774
Priority code:
104CBW62




eNewsletter
Free eNewsletters!
Publications for the IBM Tivoli and System z communities
Learn more

Tivoli Beat
Hot off IBM Press: Implementing ITIL Change and Release Management. Tivoli Beat: Jan, 13
Click here for weekly insight on IT Service Management solutions

More offers