Download as pdf or txt
Download as pdf or txt
You are on page 1of 23

A review of WebSphere MQ

© Copyright IBM Corporation 2008


Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 5.1.0.1
4.1.01
Unit objectives
After
After completing
completingthisthisunit,
unit,you
youshould
shouldbe
beable
ableto:
to:
•• Describe
Describethethefeatures
features and
andbenefits
benefits of
ofWebSphere
WebSphereMQ MQ
•• Identify
Identify the level of function in each WebSphere MQ queue
the level of function in each WebSphere MQ queue
manager
manager
•• Classify
Classifythe
theapplication
applicationmodels
modelsthat
thatWebSphere
WebSphereMQ MQcan
can
support
support
•• Find
Findfurther
furtherinformation
informationabout
aboutspecific
specificaspects
aspectsof ofWebSphere
WebSphere
MQ
MQ

© Copyright IBM Corporation 2008


WebSphere MQ functional overview
• Common application programming interface
• Assured message delivery
• Time-independent processing
• Application parallelism
• Faster application development
B
Queue

A Queue

© Copyright IBM Corporation 2008


Additional information
• WebSphere MQ publications
– Cross-platform
• For information that is common
• For planning and implementing a
WebSphere MQ network
– Platform-specific

• http://www.ibm.com/software/
integration/wmq/
– Latest news
– References
– Beta code
– SupportPacs

© Copyright IBM Corporation 2008


Message and queue
• A message is: • A queue is:
– A unit of information – A safe place to store messages
– A request for a service – Lined up for servicing
– A reply – Staged for delivery
– A report
– An announcement
Application

MQPUT Q1

Local queue Q1

QM1

© Copyright IBM Corporation 2008


Queue manager
COBOL, C, RPG,
.NET C++ Java JMS
VB, PL/1, TAL

JMS
Object-Oriented Base Classes
Provider
Classes for Java
Classes

MQI

WebSphere MQ Queue Manager

• Queue manager owns and manages queues


• Application programming interfaces enable applications to access
queues and messages
– Message Queue Interface (MQI)
– Java Messaging Service (JMS)
© Copyright IBM Corporation 2008
Message descriptor

Q1
ProgramAA
Program ProgramBB
Program
Q2

• Each message has a message descriptor


• Application determines message content

Message
Message Application
Application
descriptor
descriptor data
data
Message

© Copyright IBM Corporation 2008


Triggering
Queue manager

Program B
Application
Program A queue
A.Q MQGET A.Q
MQPUT A.Q

Process Trigger monitor


object

MQGET I.Q
Initiation
queue I.Q

• Triggering allows
– Instantiation as required
– Conservation of system resources
– Automation of flow

© Copyright IBM Corporation 2008


Parallel processing
CAR
MQPUT
MQPUT CAR RENTAL

CAR RENTAL

Reply-to queue
MQPUT FLIGHT
FLIGHT

MQPUT HOTEL MQPUT


FLIGHT

HOTEL
MQGET Reply-to queue
HOTEL MQPUT

• Requests not serialized • Possibly selective MQGET?


• Shorter elapsed time • Incomplete set of replies?
• Consolidate replies • Different process to handle
replies?

© Copyright IBM Corporation 2008


Requesting and responding applications
Insurance
data
Insurance
quotations

Insurance
agent
Server

Insurance • Queue = service


agent
• Message = request
Clients • Reply-to queue name in message
descriptor
• Multiple instances of server
possible
© Copyright IBM Corporation 2008
Transmission queues and channels
PROGRAM A PROGRAM B

Q1 CHANNEL Q.T
Transmission
queue

Q.T CHANNEL Q2
Transmission
queue

QM1 QM2
• Transmission queue (Q.T) stores message first
• Application not stopped if link is inactive

© Copyright IBM Corporation 2008


Transmission queue header

Transmission queue header


Message Application
Destination Destination Original
descriptor queue name queue manager message
data
name descriptor

© Copyright IBM Corporation 2008


Asynchronous model

Program A Q1 Program B

Program X
Q2

• Separate process for replies


• No need for communicating programs to be active at the same
time
• Time independence

© Copyright IBM Corporation 2008


Basic MQI calls
• Send messages
– MQPUT
– MQPUT1
• Receive messages
– MQGET
• Housekeeping calls
– MQCONN, MQCONNX, and MQDISC
– MQOPEN and MQCLOSE
• Look at or change properties
– MQINQ and MQSET
• Perform transactions
– MQBEGIN, MQCMIT, and MQBACK

© Copyright IBM Corporation 2008


Separate processes as units of work

MQGET travel information


Validate fields
Update request file
MQGET travel information
Format requests
Validate fields
MQPUT car rental
Update request file
Commit
Format requests
MQPUT flight information
Commit

© Copyright IBM Corporation 2008


Multiple, asynchronous units of work
Synchronous
model
Write
Send Receive
Write

Syncpoint 2 phase Syncpoint


commit

Unit of work

Write Asynchronous
model

Put Q.T
Qt A.Q
Q.A Get
Unit of work 1 Syncpoint
Write
Unit of work 2 Syncpoint

Unit of work 3

© Copyright IBM Corporation 2008


Message persistence
Queue
Application manager
program
Queue
Persistent message Log

MQPUT
CC/RC

Queue
Nonpersistent message

MQPUT
CC/RC

© Copyright IBM Corporation 2008


WebSphere MQ queue manager platforms

WebSphere MQ for AIX, V7.0


WebSphere MQ for HP-UX, V7.0 WebSphere MQ, V7.0
WebSphere MQ for iSeries, V7.0
WebSphere MQ for Linux, V7.0
WebSphere MQ for Solaris, V7.0
WebSphere MQ for Windows, V7.0

WebSphere MQ for z/OS, V7.0

WebSphere MQ for HP NonStop Server, V5.3


WebSphere MQ for HP OpenVMS, V5.3

MQSeries for HP Tru64 UNIX, V5.1


MQSeries for Sun Solaris, Intel Platform Edition, V5.1

MQSeries for VSE/ESA, V2.1.2

© Copyright IBM Corporation 2008


WebSphere MQ client

Client system Server system Assured delivery


Queue storage
Data conversion
WMQ Administration
WMQ
queue Recovery
application
manager Syncpoint control
Server
Client stub
connection
Communications Communications
stack stack

MQI channel

© Copyright IBM Corporation 2008


WebSphere MQ platforms
AIX Apple MacOS X
Both server Server
Compaq Tru64 UNIX HP NonStop Server
and client support
Data General DG/UX i5/OS
support only
HP-UX NCR MP-RAS
HP OpenVMS NUMA-Q
Linux SGI Altix ALE
SCO OpenServer SGI IRIX
SCO UnixWare Unisys MCP
Solaris Unisys OS 2200
Sun Solaris, Intel Platform z/OS
TPF • CICS
VSE • IMS
Windows • Batch/TSO

Apple MacOS
Client
HP 3000 MPE/iX
support
Stratus VOS
only
VM
For a more complete list of WebSphere MQ platforms, see:
http://www.ibm.com/support/docview.wss?rs=171&uid=swg27007431
© Copyright IBM Corporation 2008
Checkpoint questions
1. True or false: WebSphere MQ only supports asynchronous
messaging.

2. WebSphere MQ assured delivery means that:


a. A report of delivery can always be sent back.
b. Unless the entire system goes down, no messages are lost.
c. Messages can be duplicated but never lost.
d. Messages are delivered with no loss or duplication.

3. Applications place messages on queues by use of the:


a. WebSphere MQ program-to-program interface.
b. WebSphere MQ message queue interface.
c. WebSphere MQ command processor.

© Copyright IBM Corporation 2008


Checkpoint solutions
1. True or false: WebSphere MQ only supports asynchronous
messaging.
– False

2. WebSphere MQ assured delivery means that:


a. A report of delivery can always be sent back.
b. Unless the entire system goes down, no messages are lost.
c. Messages can be duplicated but never lost.
d. Messages are delivered with no loss or duplication.

3. Applications place messages on queues by use of the:


a. WebSphere MQ program-to-program interface.
b. WebSphere MQ message queue interface.
c. WebSphere MQ command processor.

© Copyright IBM Corporation 2008


Unit summary
Having
Havingcompleted
completedthisthisunit,
unit, you
youshould
shouldbebeable
ableto:
to:
•• Describe
Describethethefeatures
features and
andbenefits
benefits of
ofWebSphere
WebSphereMQ MQ
•• Identify
Identify the level of function in each WebSphere MQ queue
the level of function in each WebSphere MQ queue
manager
manager
•• Classify
Classifythe
theapplication
applicationmodels
modelsthat
thatWebSphere
WebSphereMQ MQcan
can
support
support
•• Find
Findfurther
furtherinformation
informationabout
aboutspecific
specificaspects
aspectsof
ofWebSphere
WebSphere
MQ
MQ

© Copyright IBM Corporation 2008

You might also like