Sateesh Narahari

Subscribe to Sateesh Narahari: eMailAlertsEmail Alerts
Get Sateesh Narahari: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: Java EE Journal, ERP Journal on Ulitzer, mq

J2EE Journal: Article

Monitoring WebSphere MQ-Connected Applications

Gaining Real-Time, End-to-End Visibility

Enterprises need to think about a performance management solution that will give them real-time end-to-end visibility into the entire Web application environment from browser to back-end systems, including messaging middleware such as WebSphere MQ. By providing an application-centric view of MQ-connected environments, such a tool allows application administrators to work collaboratively with MQ administrators without displacing existing MQ monitoring tools. The result is an effective, seamless process for detecting, triaging, and diagnosing application performance issues in complex interconnected environments.

Intended for Web application administrators, this article will discuss the core requirements for monitoring and managing the performance of WebSphere MQ-connected Web application environments and illustrate the advantages in having a single tool that can provide deep visibility into the application and its connecting components.

MQ Adoption Is Increasing
Enterprise IT is under constant pressure to deliver business value and optimize business processes without increasing costs. Tighter IT budgets limit IT directors' spending choices, causing many to look much harder at leveraging existing infrastructure and in-house software such as mainframes and ERP systems.

At the same time, IT directors are increasingly required to meet IT governance demands and successfully implement additional standardization programs such as ITIL initiatives. One result of these trends on the development and deployment of composite application architectures is an increasing reliance on integration middleware that is reliable and provides a proven way of tracking business-critical transactions.

Rather than creating proprietary point-to-point integration solutions, many IT organizations are implementing IBM WebSphere MQ, which provides an event-driven architecture that decouples systems and allows independent upgrades of IT system components. WebSphere MQ also establishes the foundation for higher-level application integration solutions such as publish/subscribe systems and message transformation engines. The increasing reliance on WebSphere MQ to integrate Web applications with various enterprise systems presents IT organizations with new challenges when it comes to ensuring composite application performance and availability.

What Is WebSphere MQ?
WebSphere MQ is IBM's middleware solution for commercial messaging and queuing. Used by thousands of customers around the world in every major industry, it's a key component in distributed applications and is supported on a variety of platforms. Estimated to have a 70% market share, WebSphere MQ is the Message Oriented Middleware market leader and has become the de facto industry standard for messaging middleware.

WebSphere MQ use has been growing rapidly in enterprises that are building and deploying highly integrated composite J2EE applications for a number of reasons:

  • As companies face the need to comply with various regulations and corporate governance mandates, they are standardizing their technology infrastructures.
  • The integration of Web applications with existing ERP, CRM and SCM packages continues to be an imperative.
  • Also, as IT teams take on strategic enterprise-specific projects that require application integration, they are realizing that they can leverage their existing investment in WebSphere MQ.
WebSphere MQ provides messaging backbone for applications by enabling reliable delivery of the key transactional messages between various systems. WebSphere MQ enables applications to communicate reliably across a network of processors, subsystems, and operating systems.

Queue Manager
The heart of WebSphere MQ is the message queue manager (MQM), its runtime program. Its job is to manage queues and messages for applications. It provides the Message Queuing Interface (MQI) for communication with applications.

Figure 1 shows interaction between three different applications (App1, App2, and App3) and illustrates message flow between applications. In the first case, the message msg1 is being sent from App1 to App2, both of which are running on the same WebSphere MQ system. In the second case, msg2 is being sent from App1 to App3, but App3 is running on a different MQ system. Msg2 goes through a Message Channel Agent and the network to reach the second server. WebSphere MQ provides support for communicating between applications whether they are on same server or different physical servers and different operating systems.

Queues
Message queues are used to store messages sent by programs. Queues are defined as objects belonging to a queue manager. WebSphere MQ supports different queue types, each with a specific purpose. These queues are set up for different purposes, and knowing the purpose of each queue would enable application administrators to monitor the queues that are most important to their application. Table 1 shows the various types of queues and an explanation of their purpose.

Channels
WebSphere MQ provides intercommunication between queue managers (or between queue managers and clients) using channels. In WebSphere MQ, there are two different kinds of channels:

  1. Message channels connect two queue managers via message channel agents (MCAs). Such a channel is unidirectional.
  2. MQI channels connect a WebSphere MQ client to a queue manager in its server machine. Clients don't have a queue manager of their own. An MQI channel is bidirectional.
A channel can use the following transport types: SNA LU 6.2, TCP/IP, NetBIOS, SPX, and DEC Net.

Java Connectors
The applications running on an application server such as WebSphere Application Server (WAS) also use a Java connector to link to WebSphere MQ. The MQ Java connector has evolved over the years and so there's a history to consider. The original MQ Java connector (MQCCF) is based on the older-type IBM Common Connector Framework. The newer MQ Java connector (MQJCA) is based on the J2EE Java Connector Architecture (JCA) standard.

The JCA V1.5 standard defines an architecture to connect the J2EE platform to heterogeneous Enterprise Information Systems (EIS.) The MQJCA connector represents an implementation of the JCA specifically tailored to operating with WebSphere MQ.

The packages listed below make up the current MQJCA distribution:

com.ibm.mq.jar
com.ibm.mq.pcf.jar
com.ibm.mqbind.jar
com.ibm.mqjms.jar
connector.jar
fscontext.jar
jms.jar
jndi.jar
jta.jar
ldap.jar

More Stories By Sateesh Narahari

Sateesh Narahari serves as senior manager of product marketing for Symantec's server management products. He is responsible for product marketing activities, go-to-market strategy, and sales enablement. Prior to joining Symantec, he served as product manager for Wily, where he expanded the product portfolio of Wily into new areas. Narahari holds a master's degree in computer science from University of Colorado.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.