Message queuing terminology
This information gives an insight into some terms used in message queuing.
Channels
- User-written application programs that transfer data from one node to another.
- User-written administration applications that use PCF commands or the MQAI.
- The IBM® MQ Explorer.
- Queue managers that send instrumentation event messages to another queue manager.
- Queue managers that send remote administration commands to another queue manager. For example, using MQSC commands or the administrative REST API.
For more information about channels, see Channel definitions.
Cluster
A cluster is a network of queue managers that are logically associated in some way.
In an IBM MQ network using distributed queuing without clustering, every queue manager is independent. If one queue manager needs to send messages to another, it must have defined a transmission queue and a channel to the remote queue manager.
There are two different reasons for using clusters: to reduce system administration and to improve availability and workload balancing.
As soon as you establish even the smallest cluster, you benefit from simplified system administration. Queue managers that are part of a cluster need fewer definitions and so the risk of making an error in your definitions is reduced.
For more information about clustering, see Clusters.
IBM MQ MQI client
IBM MQ MQI clients are independently installable components of IBM MQ. An MQI client allows you to run IBM MQ applications with a communications protocol, to interact with one or more Message Queue Interface (MQI) servers on other platforms and to connect to their queue managers.
- Installing an IBM MQ client on AIX®
- Installing an IBM MQ client on Linux®
- Installing an IBM MQ client on Windows
- Installing an IBM MQ client on IBM i
Intra-group queuing
Queue managers in a queue sharing group can communicate using normal channels or you can use a technique called intra-group queuing (IGQ), which lets you perform fast message transfer without defining channels. This applies only to IBM MQ for z/OS®.
For more information about intra-group queuing, see Intra-group queuing.
Message
In message queuing, a message is a collection of data sent by one program and intended for another program. See IBM MQ messages.
For information about message types, see Types of message.
Message channel agent
A message channel agent is one end of a channel. A pair of message channel agents, one sending and one receiving, make up a channel and move messages from one queue manager to another.
For information about how message channel agents are used, see Introduction to distributed queue management.
Message descriptor
An IBM MQ message consists of control information and application data.
- The type of the message
- An identifier for the message
- The priority for delivery of the message
For more information, see MQMD.
Point-to-point messaging
In point-to-point messaging, each message travels from one producing application to one consuming application. Messages are transferred through the producing application putting messages onto a queue and the consuming application gets them from that queue.
Publish/subscribe messaging
In publish/subscribe messaging, a copy of each message published by a publishing application is delivered to every interested application. There might be many, one or no interested applications. In publish/subscribe an interested application is known as a subscriber and the messages are queued on a queue identified by a subscription.
For more information, see Publish/subscribe messaging.
Queue
A named destination to which messages can be sent. Messages accumulate on queues until they are retrieved by programs that service those queues.
For more information, see Queues.
Queue manager
A queue manager is a system program that provides queuing services to applications.
It provides an application programming interface so that programs can put messages on, and get messages from, queues. A queue manager provides additional functions so that administrators can create new queues, alter the properties of existing queues, and control the operation of the queue manager.
For IBM MQ message queuing services to be available on
a system, there must be a queue manager running. You can have more than one queue manager running on
a single system (for example, to separate a test system from a live system). To an
application, each queue manager is identified by a connection handle
(Hconn
).
Many different applications can use the services of the queue manager at the same time and these applications can be entirely unrelated. For a program to use the services of a queue manager, it must establish a connection to that queue manager.
For applications to send messages to applications that are connected to other queue managers, the queue managers must be able to communicate among themselves. IBM MQ implements a store-and-forward protocol to ensure the safe delivery of messages between such applications.
For more information, see Queue managers.
Queue sharing group
The queue managers that can access the same set of shared queues form a group called a queue sharing group (QSG). They communicate with each other with a coupling facility (CF) that stores the shared queues. This applies only to IBM MQ for z/OS.
For more information, see Shared queues and queue sharing groups.
Subscription
A publish/subscribe application can register an interest in messages about specific topics. When an application does this it is known as a subscriber and the term subscription defines how matching messages are queued for processing.
A subscription contains information about the identity of the subscriber and the identity of the destination queue on to which publications are to be placed. It also contains information about how a publication is to be placed on the destination queue.
For more information, see Subscribers and subscriptions.
Topic
A topic is a character string that describes the subject of the information that is published in a publish/subscribe message.
Topics are key to the successful delivery of messages in a publish/subscribe system. Instead of including a specific destination address in each message, a publisher assigns a topic to each message. The queue manager matches the topic with a list of subscribers who have subscribed to that topic, and delivers the message to each of those subscribers.
For more information, see Topics.