National Clearing Cell – Mumbai CICS : An Overview
MQSeries
Reserve Bank of India 1
National Clearing Cell – Mumbai CICS : An Overview
Messaging means that programs communicate with each
other by sending data in messages and not by calling each
other directly.
Queuing means that programs communicate through queues.
Programs communicating through queues need not be
executed concurrently.
Reserve Bank of India 2
National Clearing Cell – Mumbai MQ Series
A single, multi-platform API
Assured message delivery
Faster application
development
Time independent processing
Application parallelism
B
Reserve Bank of India 3
National Clearing Cell – Mumbai MQ Series
Three characteristics of Messaging and Queuing that differentiate it
from other communication styles:
1) Communicating programs can run at
different times.
2) There are no constraints on
application structure.
3) Programs are insulated from
network complexities.
Reserve Bank of India 4
National Clearing Cell – Mumbai MQ Series
The Components
What is a Message?
What is a Message Queue?
What is a Queue Manager?
What is a Cluster?
What is a Client?
Reserve Bank of India 5
National Clearing Cell – Mumbai MQ Series
MQSeries defines four types of message:
Datagram A simple message for which no reply is expected
Request A message for which a reply is expected
Reply A reply to a request message
Report a message that describes an event such as the
occurrence of an error
Reserve Bank of India 6
National Clearing Cell – Mumbai MQ Series
What is a queue?
A message queue, known simply as a queue, is a named
destination to/from which messages can be sent/received.
•Message Types
Persistent/Non Persistent
•Message Access
FIFO/Priority
•Share Option
•Queue depth
•Message length.
•Parallel access by applications
Reserve Bank of India 7
National Clearing Cell – Mumbai MQ Series
Kinds of queues
Local Queue : Owned by the queue manager to which the
application program is connected.
Remote Queue : a ‘structure’ containing the charaterstics of a
queue hosted by a different queue manager
Cluster Queue : a local queue that is known throughout a cluster
of queue managers
Transmission Queue : local queue with a special purpose. A
remote queue is associated with a transmission queue
Initiation Queue : a local queue to which the queue manager
writes a trigger message when certain conditions are met on
another local queue.
Reserve Bank of India 8
National Clearing Cell – Mumbai MQ Series
Queue Manager
Reserve Bank of India 9
National Clearing Cell – Mumbai MQ Series
MQ API
Reserve Bank of India 10
National Clearing Cell – Mumbai MQ Series
MQ APIs
MQCONN Connect to a queue manager
MQDISC Disconnect from a queue manager
MQOPEN Open a specific queue
MQCLOSE Close a queue
MQPUT Put a message on a queue
MQGET Get a message from a queue
MQPUT1 MQOPEN + MQPUT + MQCLOSE
MQINQ Inquire properties of an object
MQSET Set properties of an object
MQCONNX Standard or fastpath bindings
MQBEGIN Begin a unit of work (database coordination)
MQCMIT Commit a unit of work
MQBACK Back out
Reserve Bank of India 11
National Clearing Cell – Mumbai MQ Series
Queue Manager Clusters
A cluster is a network of queue managers that are logically
associated in some way.
• The queue managers in a cluster can make the queues that they
host available to every other queue manager in the cluster.
MQPUT to a
Cluster Queue
Reserve Bank of India 12
National Clearing Cell – Mumbai MQ Series
Queue Manager Clusters
•Clustering also permits multiple instances of a queue( with the
same name) on different queue managers.
When an application specifies only the queue name, message is
distributed on a round robin basis.
Reserve Bank of India 13
National Clearing Cell – Mumbai MQ Series
Channel : A logical communication link
Message Channel : connects two queue managers via
message channel agents (MCA).|
An MCA is a program that transfers messages from
a transmission queue to a communication link and vice
versa.
MQI Channel : connects an MQSeries client to a queue
manager in its server machine.
Reserve Bank of India 14
National Clearing Cell – Mumbai MQ Series
Channel : A logical communication link
Channels are unidirectional
Two-way communication requires two channels
MQSeries Cluster support has special channel types
Reserve Bank of India 15
National Clearing Cell – Mumbai MQ Series
Channel : A logical communication link
Reserve Bank of India 16
National Clearing Cell – Mumbai MQ Series
How the communication
is started automatically
1. Program issues an MQPUT
to a remote queue and a message
is placed into the transmission
queue.
2. When the queue manager puts
a message into the transmission queue, it also checks the trigger
type specified in the queue definition
and puts the ‘trigger d\message’ on the initiation queue
3. Channel initiator monitors the channel initiation queue and
removes the trigger message and…..
4. …. starts the message channel agent
5. The channel program gets the message off the transmission queue
6. The message is then moved over the network to its destination.
Reserve Bank of India 17
National Clearing Cell – Mumbai MQ Series
How to trigger applications
[Link] A issues an MQPUT
and puts a message into A-Q for
Program B.
2. The queue manager processes
this API call and puts the message into the application queue.
3. It also finds out that the queue is triggered. It creates a trigger
message and looks in the Process Definition to find the name of the
application and puts it in the trigger message. The trigger message is
put into the initiation queue.
4. The trigger monitor gets the trigger message from the initiation
queue and starts the program specified.
5. The application program starts running and issues an MQGET to
retrieve the message from the application queue.
Reserve Bank of India 18
National Clearing Cell – Mumbai MQ Series
How MQSeries works
Reserve Bank of India 19
National Clearing Cell – Mumbai MQ Series
The Security Setup
Reserve Bank of India 20