This paper attempts to answer some of the basic questions about MQSeries Integrator including ‘What does it do?’ and ‘Why do I need it?’.
[Return to Contents]
Basically, MQSeries Integrator’s job involves electronic messaging, so let’s start by making sure everyone understands what electronic messaging means. You know that you can use your computer to send messages to other computer users, and that you can receive replies from others by the same means. In many offices, e-mail has become a primary method of communication. All messages do not travel from person to person, however. Computer programs can also generate, send, and receive messages, and programs can react to messages from other programs.
dCan you imagine the volume of messages whizzing around the planet and the near-space environment right now? They fly along ‘phone lines, ride laser beams, bounce between satellites, flash between cellular modems. In all this activity, the vast number of human-to-human messages is dwarfed by those messages zipping between computer programs.
Hello, Los Angeles?
Consider a program on a computer in San Francisco, for instance that has the job of tracking payments for utility customers in California. Not only does this program have to do its job all day long, but at 2:00 every morning, it has to transmit a copy of any changed data to the head office in Los Angeles. Once connected, the conversation between the San Francisco and Los Angeles computers (translated into English) might go something like this:
“Los Angeles, I’ve completed the processing cycles required before initiating my scheduled transmission. Are you ready to receive?”
“San Francisco, I have completed the internal checks required before responding to your request and, since those checks indicate a state of readiness, I am ready to receive.”
“Los Angeles, here comes the transmission.” [Transmission takes place.] “Los Angeles, I have completed the transmission.”
“San Francisco, I’m checking your transmission.” [Checking takes place.] “San Francisco, my check indicates that your transmission is complete and uncorrupted. You may proceed with subsequent processes.”
“Los Angeles, ...”
You get the idea.
Problem Communication
Like human communication, messages between computers can become fouled. This can happen when the connection between the two ends stops working, when sender and receiver speak different languages, or when a message gets crowded out because too much is happening at once. Most of us know how confusing it can be if you get a message more than once.
If your e-mail message is about the company softball team gets lost, that’s not too serious. But suppose the electronic transmission of your medical test results gets scrambled with someone else’s? That is serious!
A great many people would like - no, they must have - better electronic messaging. Many industries need messaging systems that guarantee delivery of messages, and systems that are “smart” enough to resolve the different “languages” in which data is passed. They also need to be certain that messages get through once and only once.
Oh, yes - and while we’re at it, everything needs to run much faster! All this brings us to MQSeries Integrator.
[Return to Contents]
What MQSeries Integrator Is
MQSeries Integrator is a tool kit, consisting of “middleware” components, that makes it easy to pass messages between applications. By middleware we mean software that is intended to work between different software applications. MQSeries Integrator works in “real-time” so messages are transmitted and processed as soon as they are sent. The message will only be delayed if a part of the path that it follows is broken - maybe because a computer is turned off, or there’s been a network failure.
We also call MQSeries Integrator an “intelligent router”, because it exceeds the capabilities of earlier message routing programs: MQSeries Integrator knows how and where to deliver its messages. MQSeries Integrator frees up customer applications and system resources by taking over the burden of knowing how to deal with each program or platform involved in messaging. It allows you to link applications so that the flow of data between them matches your business processes. Finally, we say that MQSeries Integrator supports “data connectivity”, which is a fair enough description.
What MQSeries Integrator Does
MQSeries Integrator makes it possible to deliver more messages, faster, which certainly makes it a hot commodity. MQSeries Integrator also can “add value” while moving those messages along.
“Okay,” you may be asking, “what does ‘adding value’ mean?”
MQSeries Integrator offers three components that enhance, and therefore add value to, what application to application messaging does: MQSeries messaging, Rules for MQSeries Integrator and Formatter* for MQSeries Integrator. Strictly speaking, none of these components are required, nor, strictly speaking, do they depend on each other’s presence. Usually, these components are used together to provide the best solution.
Message Queuing
MQSeries simplifies the transmission of messages from one kind of machine, operating system or application language to another. This is called heterogeneous platform support, and MQSeries has the widest product coverage in the market. MQSeries also takes over part of the work previously done by the customer’s application (remember the “middleware” concept?) by guaranteeing the delivery of each message, so that it is received once and once only.
MQSeries can also coordinate messaging work with other transactional work that the customer’s application may be doing, for instance database updates. If a message is being used to drive an update to a database, and for some reason the system fails and database update does not take place, then the message will still be there for the application to try again, once the system restarts.
NOTE: A queue is a sequence of messages waiting for processing.
It does take some customizing to make MQSeries work with a customer’s application. Mainly, we do this by creating links in the customer’s application to a library of MQSeries code statements. These code statements, called Application Program Interfaces, or APIs, also offer heterogeneous platform support, which is a great advantage to programmers who have to make their applications work on different operating systems.
Formatter*
Through the second component, called Dynamic Formatter* or simply Formatter*, MQSeries Integrator can translate messages from different protocols, programming languages, applications and hardware platforms. It’s amusing to think of Formatter as the universal translator in Star Trek, which lets humans tour the galaxy without lugging English-Klingon phrase books around.
The Formatter can parse and reformat messages at different points in the communications process. The exact point depends on what’s most effective for the environment in which MQSeries Integrator runs.
Rules
The third component, called Rules-based Message Evaluation* - or just Rules* - can turn messages into computer commands and carry out actions based on the results. For a given message, Rules defines who, or what, is supposed to receive the message, where it should go, and what the appropriate format of the message should be. Clever stuff, wouldn’t you say?
Two Useful Concepts
Two other concepts about MQSeries Integrator will serve you well: Asynchronous messaging and intelligent routing. Asynchronous messaging means that once a customer application has given a message to MQSeries, the application can carry-on with other processing, secure in the knowledge that MQSeries will take care of the message. Because MQSeries guarantees delivery of the message, the whole message and only one copy of the message, the customer application doesn’t have to wait around for confirmation that the message got delivered. If you consider how much freedom this gives the customer application, you can see that this in itself offers potential for tremendous improvements in speed.
MQSeries Integrator’s intelligent routing capability frees the message sender from having to know about the message receiver. Once the sender has dropped off the message, MQSeries Integrator delivers the message to those receivers that have an interest in the message because it contains certain data.
Imagine a magazine, for example, that no longer wishes to manage its own subscription list. The magazine hands that job off to a third party that receives each month’s magazine shipment, then delivers a copy to all magazine subscribers. MQSeries Integrator acts like the third party subscription-and-delivery service. Moreover, with MQSeries Integrator’s content-based rules, a “subscription” can filter what you receive. Imagine getting only the magazines with articles on a selected subject, written by certain writers, and only if the articles are less than six pages long.
How MQSeries Integrator Works
Answering the question of how MQSeries Integrator works in any kind of detail would send us deep into the intricacies of programming APIs and high performance transaction processing. The question also brushes up against some sensitive trade-secrets, and for those reasons, let’s just say that MQSeries Integrator works, and it works well.
[Return to Contents]
Who Needs MQSeries Integrator and Why?
- The financial industry, which needs to make sure that vast numbers of transactions happen, happen correctly, and that they happen once and once only.
- The healthcare industry, which needs information to be absolutely correct, and available across multiple facilities that often have different legacy systems in place.
- Retail operations, which need to exchange orders and invoices with suppliers.
- Manufacturers, which need to coordinate efforts at sub-assembly plants all over the world.
- The communications industry, which always needs to disseminate more information faster and more intelligently.
- Education and research, which need to communicate on many levels with colleagues who work on an incredible variety of platforms, in many languages and numbering systems, and often with unusual computer processing requirements.
- Nearly everyone else for whom the Information Age otherwise means too many facts, going too many different places, at insufficient speeds, with inadequate accuracy.
[Return to Contents]
So now you know to think of MQSeries Integrator as message-handling software that enhances the effectiveness of computer systems by making messaging more efficient and flexible. It also improves performance through asynchronous messaging and the intelligent routing capability, which takes the load off communicating applications.
You know the three components of MQSeries Integrator add value to messaging by facilitating message exchange between different platforms, by translating messages from different formats and protocols and by allowing messages to act as instructions to direct their processing.
You also know that MQSeries Integrator assures messages against loss and can coordinate messaging work with database work.
You can appreciate that MQSeries Integrator will enable companies to automate application integration within and beyond the enterprise.
Finally you know that MQSeries Integrator can help nearly everyone who intends to deploy business-critical applications over an intranet or the Internet.
[Return to Contents]
Where to Find More Information
IBM United Kingdom Ltd.
Hursley Park
Winchester
Hampshire SO21 2JN
http://www.ibm.com/software/ts/mqseries
* The Rules and Formatter are developed for IBM by NEON (New Era Of Networks)fs
|