☆ A middle ware from IBM.
☆ It has runtime managers such as Queue Managers and Queues.
☆ Queue is an object which holds messages of various formats - XML/text/byte.
☆ Queue manger maintains and manages objects like Queues, channels.
☆ Various listener applications listen to these queues for grabbing the messages, followed by processing these messages.
☆ Java Messaging Service is one of the standards provided by JEE specification for asynchronous messaging.
☆ The queues can be defined in JEE container and send messages on these queues.
☆ Message Driven Bean can be configured for listening the JMS queues.
☆ When a message is on the JMS queue, the corresponding MDB's onMessage() method is invoked and the message processing can be done.
☆ WebSphere MQ will significantly improves the flow of information across an enterprise.
☆ The message is placed and adjusted for dynamic business requirements.
☆ MQ series reduce maintenance, integration costs and acts as a bridge to various technologies.
☆ MQ Series reduces costs and all the disruptions are processed from data loss.
☆ Allows ongoing maintenance efforts through universal service delivery.
☆ Security breaches are eliminated and insures the compliance through message and.
☆ transaction integrity.
The following are the types of queues:
1) Model Queue:
A queue definition is called a model queue. It is used when a dynamic queue is created
2) Alias Queue:
Another name for a local queue or a remote queue. It's usage is for security and maintenance
3) Remote Queue:
Remote queue is a queue definition pertaining to another Q Manager
4) Initiation Queue:
It is a local queue. Queue manager writes a trigger message at the time of meeting certain conditions on another local queue
5) Dynamic Queue :
A dynamic queue is created 'on the fly' on demand by the application. The dynamic queues may be retained or automatically deleted when the application program ends. It is used to store any intermediate result
6) Cluster Queue:
A local queue. It is known throughout a cluster of queue managers
A request message must have the queue name, into which the program that is responding must put the reply message
The following are some of the reserved queue names of IBM Websphere MQ Series:
☆ SYSTEM.ADMIN.CHANNEL.EVENT Queue for events of channel
☆ SYSTEM.CHANNEL.INITQ A distributed queuing queue on z/OS without CICS
☆ SYSTEM.CHANNEL.SEQNO A distributed queuing queue on z/OS using CICS
☆ SYSTEM.CHANNEL.SYNCQ A distributed queuing queue on z/OS without CICS
☆ SYSTEM.ADMIN.COMMAND.QUEUE Queue for PCF command messages to be sent for
☆ non- z/OS
☆ SYSTEM.ADMIN.CONFIG.EVENT Queue for events of configuration
☆ SYSTEM.ADMIN.PERFM.EVENT Queue for events of performance
☆ SYSTEM.ADMIN.QMGR.EVENT Queue for events of queue manager
☆ SYSTEM.CHANNEL.COMMAND A distributed queuing queue on z/OS using CICS
☆ SYSTEM.CICS.INITIATION.QUEUE Queue for utilization of triggering for non- z/OS
☆ SYSTEM.CLUSTER.COMMAND.QUEUE Queue for communication repository changes among queue managers (applicable for AIX, HP-UX, Linux, OS/2 Warp, OS/400, Solaris, Windows, and z/OS only)
☆ SYSTEM.CLUSTER.REPOSITORY.QUEUE Queue for holding information about repository (applicable for AIX, HP-UX, Linux, OS/2 Warp, OS/400, Solaris, Windows, and z/OS only)
Sending messages from one queue manager to another queue manager is known as inter communication/
☆ The receiving queue manager may by on the same machine or another.
☆ It could be executing on the platform where the local queue manager exists
☆ It could be executing on another platform supported by Web Sphere MQ
☆ The participating entities are:
1) Message channels, message channel agents
2) Transmission queues, channel initiators and listeners
3) Programs those are co-existing
MQ messages types are:
☆ Data-gram - It is an unsolicited message
☆ Request - A message for which a response is expected
☆ Reply - A message event such as a confirmation on arrival or delivery. It can be an error
☆ MQ messages can be persistent or non-persistent
☆ Persistent messages are usually logged.
☆ The performance of the application is reduced by logged messages.
☆ Persistent messages are utilized only for essential data.
☆ When the queue manager is stopped / failed or the data in the message is discarded, then use a non persistent message.
☆ As the logged data is persisted for long time and need to keep track about the events that are happening in the systems, this data need to be persisted.
☆ Use buffering mechanism to improve the speed of retrieving data from the logged messages.
☆ The exchanging of messages among sending and receiving programs is time independent
☆ The sending and receiving application programs are decoupled
☆ Sender's process can continue with out the need of waiting for the receiver's acknowledgement message
☆ The receiver's application need not be running while the message is sent
☆ The receiver can retrieve the messages after it has been started
☆ When a queue is not delivered to their correct destinations, then it is called as Dead Letter queue.
☆ When the destination queue is full, the dead-letter queue occurs. It is identified by SYSTEM.DEAD.LETTER.QUEUE.
☆ A dead-letter queue is defined for distributed queuing, on each queue manager.