A queue manager is that part of an WebSphere MQ Series product that provides the messaging and queuing services to application programs, through the Message Queue Interface (MQI) program calls. It controls access to queues and serves as transaction (syncpoint) coordinator for all queue operations.
Queue manager names must be unique!
MQSeries defines four types of queues. A queue instance is fully qualified by its queue manager and queue name.
Local Queue – an actual queue for which storage is allocated.
Remote Queue – a definition of a queue on a different queue manager (acts somewhat like a pointer)
Alias Queue – another name for a local or remote queue. Typically used to switch queue destinations without modifying program code
Model Queue – a template whose properties are copied when creating a new dynamic local queue (“ create queue xxx “like” queue yyy).
Some properties of local queues
- Maximum Message Size
- Maximum Queue Depth
- High/Low Factors
- Enable/Disable Put or Get
- Persistent/Not Persistent
Local queues can generate events (messages) under certain conditions (like queue full). the execution of a program. These events are called trigger messages. The queue on which they are put is called an Initiation Queue.
Process defines an application to an MQSeries queue manager. A process definition object is used for defining applications to be started by a trigger monitor. A trigger monitor is a program that listens on an initiation queue and executes commands named in Process definitions.
Triggers and Process definitions are useful when you don’t want to deploy long-running programs. Suppose the message rate is very low (several minutes between requests). Perhaps it is better to instantiate the program for each message, and then let it exit.