IBM MQ
Messaging software that passes messages between programs, on the same system or across many systems, so they can work together without waiting for each other.
Also written MQ, MQSeries, WebSphere MQ, message queue, queue manager
IBM MQ is messaging software. One program puts a message on a queue, and another program gets it from the queue, possibly on a different computer and possibly later. The two programs do not need to be running at the same time or know where the other one is.
On z/OS, MQ runs as a subsystem called a queue manager. Programs in CICS, batch and other environments use it to exchange messages with programs on the mainframe and outside it. A request from a mobile app might arrive on the mainframe as an MQ message, be processed by a CICS program, and the answer sent back as another message.
MQ can guarantee that an important message is delivered once and only once, even if a system fails along the way. It does this by taking part in commit and rollback, so a message and a database update succeed or fail together.
The product was called MQSeries and later WebSphere MQ, so you will see all three names in older documents. When people at a bank talk about "the queues", they often mean MQ.
Where can I learn this hands-on?
Right here, at ZedBank. You take a junior job at a simulated bank and learn each part of the work by doing it, with Zed beside you. There's nothing to install.
Start at ZedBankRelated
- SubsystemA major piece of software running under z/OS that provides a service to applications, such as a database or a transaction manager.
- CICSThe transaction manager that runs online mainframe applications, and the software behind a great many screens bank staff use.
- Online transaction processingHandling many small pieces of work in real time while someone waits: a card payment, a balance check, a seat booking.
- Commit and rollbackMaking a set of changes permanent together, or undoing them together, so a transaction never half-happens.
- Started taskA long-running program that the system starts and leaves running, rather than a job that runs once and finishes.