Internet and Intranet Protocols and Applications: Introduction To Mqseries and Asynchronous Messaging
Internet and Intranet Protocols and Applications: Introduction To Mqseries and Asynchronous Messaging
Applications
Lecture 14
Introduction to MQSeries
And Asynchronous Messaging
May 1, 2002
Joseph Conron
Computer Science Department
New York University
[email protected]
What is MQSeries?
• A middleware product that implements a
messaging and queuing framework.
• Middleware - an intermediate software
component that bridges dissimilar computing
environments.
– Unix, MVS, OS/400 Tandem, VMS, NT, etc.
– SNA, NetBios, TCP/IP
– Cobol, C, JAVA
Messaging and Queueing
</Soap Box>
A Brief History of MQSeries
• 1992
– Systems Strategies (SSI) develops ezBridge, a messaging and
queuing product for VMS, Tandem, and Unix
– IBM announces Networking Blueprint defining three standard APIs
for program to program communication: CPI-C, RPC, MQI
• 1992-3
– State Street Bank (Boston) evaluates IBM messaging product
(code name “Victory”) for IBM CICS/ESA and SSI’s ezBridge on
VMS and Tandem.
“State Street Bank would like to announce the wedding of
IBM and Systems Strategies!”
• 1993
– IBM buys intellectual property rights for ezBridge from SSI
The Bride’s Wedding Preparation
(What SSI had to do)
• Over time, IBM replaced SSI versions with “ports” of its reference system.
Key Concept:
message queue exists
independently from
programs that use them!
No Constraints on Application Structure
Programmatic
API
Queue Manager
Queue Manager
• Queue Manager
– Controls access to queues:
• administration (create, delete, etc)
• usage (Put, Get)
– serves as transaction (syncpoint) coordinator for all
queue operations.
– Accessed through the Message Queue Interface (MQI)
– Queue Managers have names (identities) that are
UNIQUE in a network (like host names).
MQSeries Objects: Queues
– Alias Queue - another name for a local or remote queue. Typically used
to switch queue destinations without modifying program code.
• Destination Queue
• Reply Queue name
• Time to live (expiry)
• Format
• Correlation ID
• Persistence
• “Report” options
MQSeries Messages: Properties (2)
• Observations:
– Circular logging is easy to manage, but is fatal
if log is damaged (hard to backup circular
logs!).
– Linear logging is hard to maintain but provides
for archiving of previous logs (still a problem if
“current” log is damaged).
MQI: The MQSeries Programming
Interface
MQCONN Connect to queue manager
MQCMIT Commit