MQSeries
Jai Raj Yadav
1 MQSeries Tech Introduction
MQSeries
Your Expectations
2 MQSeries Tech Introduction
MQSeries
MQSeries connects / integrates
applications running on heterogeneous
hardware / software platform through
messaging
3 MQSeries Tech Introduction
MQSeries
Course Coverage
Introduction to MQSeries
Programming with MQSeries using the MQI
Intercommunication
System administration
Transactional Support
Security in MQSeries
Linking , Bridging and the MQSeries Family
4 MQSeries Tech Introduction
MQSeries
Introduction to MQSeries
Objectives
•Position messaging and queuing in today's business
environment
•Provide a high-level view of MQSeries functions
•Show breadth of coverage of MQSeries products
5 MQSeries Tech Introduction
Islands of Automation
Introduction to MQSeries
6 MQSeries Tech Introduction
Program-to-Program Communication
Introduction to MQSeries
7 MQSeries Tech Introduction
Synchronous Model
Introduction to MQSeries
8 MQSeries Tech Introduction
Asynchronous Model
Introduction to MQSeries
9 MQSeries Tech Introduction
Time Independence
Introduction to MQSeries
10 MQSeries Tech Introduction
The Three Styles of Communication
Introduction to MQSeries
11 MQSeries Tech Introduction
MQI Calls
Introduction to MQSeries
12 MQSeries Tech Introduction
Messages
Introduction to MQSeries
13 MQSeries Tech Introduction
Local and Remote Queues
Introduction to MQSeries
14 MQSeries Tech Introduction
Messaging Means Less Networking
Introduction to MQSeries
15 MQSeries Tech Introduction
Parallel Processing
Introduction to MQSeries
16 MQSeries Tech Introduction
Client / Server
Introduction to MQSeries
17 MQSeries Tech Introduction
Triggering
Introduction to MQSeries
18 MQSeries Tech Introduction
Data integrity
Introduction to MQSeries
19 MQSeries Tech Introduction
Security
Introduction to MQSeries
20 MQSeries Tech Introduction
MQSeries Client
Introduction to MQSeries
21 MQSeries Tech Introduction
Introduction to MQSeries - Summary
22 MQSeries Tech Introduction
Introduction to MQSeries
Exercise
1. Mqseries uses an interface for programs to access resources
called :
a. The Program-to-Program API
b. The Message Queue Interface
c. The synchronous model
d. Triggering
2. Mqseries only supports messaging and queuing in an
asynchronous environment. T F
3. A Message consists of :
a. Application data
b. An Mqseries trailer
c. A sequrity header
d. A message descriptor
e. All of above
23 MQSeries Tech Introduction
Introduction to MQSeries
Exercise
4. All Mqseries messagaes will have at least one header . It is
the :-ed :
a. MQXQH (Transmission header)
b. MQDLK (Dead letter header)
c. MQMD (Message descripter)
d. MQTH (Trigger header)
24 MQSeries Tech Introduction
Programming with MQSeries - The MQI
Unit 2
Objectives
• Introduce each MQI call
• Provide high-level understanding of the
use of each call
25 MQSeries Tech Introduction
Programming with MQSeries - The MQI
The MQI Philosophy
• Simple CALL interface
• Limited number of calls
• Rich in function
• Sensible default and initial values
• Supplied include files and copy files for
the definitions of:
• Structures
• Constants
26 MQSeries Tech Introduction
Programming with MQSeries - The MQI
Examples
27 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQCONN Call
28 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQCONNX Call
29 MQSeries Tech Introduction
Programming with MQSeries - The MQI
Remote Queue Manager
30 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQOPEN Call
31 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQCLOSE Call
32 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQDISC Call
33 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQPUT Call
34 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQGET Call
35 MQSeries Tech Introduction
Programming with MQSeries - The MQI
Get Message Options
36 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQPUT1 Call
37 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQINQ Call
38 MQSeries Tech Introduction
Programming with MQSeries - The MQI
MQSET Call
39 MQSeries Tech Introduction
Programming with MQSeries - The MQI
Additional MQI Calls
40 MQSeries Tech Introduction
MQI Additional Details
• Gain understanding of some MQI
details
• Consider uses for some MQSeries
functions
• Note some Version 5 functions
41 MQSeries Tech Introduction
MQI Additional Details
Some Fields in the Message Descriptor
42 MQSeries Tech Introduction
MQI Additional Details
Message Persistence
43 MQSeries Tech Introduction
MQI Additional Details
Retrieval in Priority Order
44 MQSeries Tech Introduction
MQI Additional Details
Message and Correlation Identifiers
• Two fields in the message descriptor
• MsgId, message identifier
• May be specified by an application or
generated by the
• queue manager
• CorrelId, correlation identifier
• In a reply message, it is normally copied from
the MsgId
• of the original message
45 MQSeries Tech Introduction
MQI Additional Details
Retrieving Messages Using Selection Criteria
46 MQSeries Tech Introduction
MQI Additional Details
Responses and Reports
47 MQSeries Tech Introduction
MQI Additional Details
Expiry
48 MQSeries Tech Introduction
MQI Additional Details
Message Group
49 MQSeries Tech Introduction
MQI Additional Details
Message Segmentation
50 MQSeries Tech Introduction
MQI Additional Details
Distribution List
51 MQSeries Tech Introduction
MQI Additional Details - Unit 2
Summary
• Limited number of MQI verbs offer great
capability
• MQI calls are portable
• MQSeries message queuing interface allows
programs to
– exert control over delivery of messages
– Status reports about message delivery can
be requested
• Version 5 products offer more functions
52 MQSeries Tech Introduction
Programming with MQSeries - The MQI
Exercise
1. The additional parameter used in MQCONNX is :-
a. Queue manager name
b. Connection handle
c. Connecton option
2. MQSET lets you change all the attributes of Queues only. T
F
3. You must use MQOPEN before using (select all that apply) :
a. MQGET
b. MQINQ
c.MQPUT1
d. MQCLOSE
e. all the above
53 MQSeries Tech Introduction
Programming with MQSeries - The MQI
Exercise
4. The messages will be recovered when a queue manager is
restarted if they are :-
a. Saved by operator
b. Persistent
c. High priority messages
d. Retrieved using MSGID and CORRELLID
5. A message group is made up of (select all that apply) :
a. One or more physical messages
b. One or more logical messages
c. Only one logical message but several physical messages
d. All of the above
54 MQSeries Tech Introduction
MQSeries Unit 3
Objectives
• Describe message channel and message channel
agent (MCA)
• Understand the basis of transmission queue
• Describe routing techniques
• Describe method of triggering channels
• List and describe components of distributed queuing
• Understand various distributed queuing techniques
• Consider extensions available to increase distributed
• queuing functions
55 MQSeries Tech Introduction
Intercommunion
The Message Channel
56 MQSeries Tech Introduction
Intercommunion
Types of Channels
57 MQSeries Tech Introduction
Intercommunion
Transmission Queues
58 MQSeries Tech Introduction
Intercommunion
Starting a Channel
•By an
operator
•By ttrigger
when
messages
arrive
•Applications
starting the
channel
•Can be
started from
network
59 MQSeries Tech Introduction
Intercommunion
Stopping Channels
60 MQSeries Tech Introduction
Intercommunion
Remote Queues
61 MQSeries Tech Introduction
Intercommunion
Message Concentration
62 MQSeries Tech Introduction
Intercommunion
Message Segregation
63 MQSeries Tech Introduction
Intercommunion
Multiple Hops
64 MQSeries Tech Introduction
Intercommunion
Channel Exits
65 MQSeries Tech Introduction
Intercommunion
Application Data Conversion
66 MQSeries Tech Introduction
Intercommunion
Channel Attributes
67 MQSeries Tech Introduction
Intercommunion
MQSeries Queue Manager Clusters
68 MQSeries Tech Introduction
Intercommunion
MQI Channels
69 MQSeries Tech Introduction
Intercommunion -Summary
70 MQSeries Tech Introduction
Intercommunion
Exercise
1. Which of the following not required for remote queuing
between two queue managers ?
a. A delivery mechanism across the link
b. A protocol between two channels
c. A remote queue definition
d. A transmission queue
2. MQSeries channels must always come in pairs. T F
3. A transmission Q is special queue that needs to be defined. T
F
4. Which of the following are valid cahnnel types (MCA) that can
send data held in transmission queue ?
A. Sender B. Receiver C. Requester D. Server
71 MQSeries Tech Introduction
System Administration
Objectives
• List system administration interfaces for MQSeries
• Explain concepts of logging and recovery
• Describe some of the common features of
MQSeries
72 MQSeries Tech Introduction
System Administration
Administration Tasks
73 MQSeries Tech Introduction
System Administration
MQSeries for OS/390 Administration Interfaces
74 MQSeries Tech Introduction
System Administration
Queue Storage Management
75 MQSeries Tech Introduction
System Administration
The Log and Bootstrap Data Sets
76 MQSeries Tech Introduction
System Administration
MQSeries for AS/400 Administration Interfaces
77 MQSeries Tech Introduction
System Administration
Journaling and Recovery
78 MQSeries Tech Introduction
System Administration
Administration on OS/2 and UNIX Systems
79 MQSeries Tech Introduction
System Administration
Administration on Windows NT Systems
80 MQSeries Tech Introduction
System Administration
Logging and Recovery
81 MQSeries Tech Introduction
System Administration
Summary
• MQSeries uses installation facilities of
operating system.
• All MQSeries platforms share much
common principles
• Proper management of logging and
recovery ensures a robust commercial
messaging environment
82 MQSeries Tech Introduction
System Administration
Quiz
1. MQSeries installation uses system specific procedure for
installation :
T F
2. The first queue manager created on a system will be the default ;
T F
3. Logging is used in following queue managers :
a. MQSeries for OS/390
b. MQSeries for OS/2 Warp
c. MQSeries for HP-UX
d. MQSeries for AS/400, UNIX, Windows NT, and OS/2
e. MQSeries for AIX
4. On Windows NT 5.1 and higher queue managers, which of of the
following interfaces are available for administration :
83 MQSeries Tech Introduction
System Administration
Quiz
4. On Windows NT 5.1 and higher queue managers, which of of
the following interfaces are available for administration :
a. ISPF panels
b. MQSeries explorer
c. Management from an MQI client
d. Web administrstion
e. STRMQMADM
84 MQSeries Tech Introduction
Transactional Support
Objective
• Describe how MQSeries acts as a resource
manager
• Explain how and when MQSeries acts as a
transaction manager
• Consider programming implications of unit of
work processing
85 MQSeries Tech Introduction
Transactional Support
Unit of Work
86 MQSeries Tech Introduction
Transactional Support
Resource Manager
87 MQSeries Tech Introduction
Transactional Support
Transaction Manager
88 MQSeries Tech Introduction
Transactional Support
MQGET within Syncpoint Control
89 MQSeries Tech Introduction
Transactional Support
MQPUT within Syncpoint Control
90 MQSeries Tech Introduction
Transactional Support
Coordinating Local Units of Work
91 MQSeries Tech Introduction
Transactional Support
Internal Coordination of Global Units of Work
92 MQSeries Tech Introduction
Transactional Support
Database Coordination
• Supported database managers
– MQSeries for AIX, HP-UX, and Sun Solaris
• DB2 and Oracle
– MQSeries for OS/2 Warp and Windows NT
• DB2
• Restrictions
– An MQSeries client cannot participate in a global unit of work
– Only one queue manager may participate in a global unit of work
– Normally, updates to MQSeries and database resources must be
made on the same system
– However, a database server may be on a different system
provided it can supply an XA-compliant client feature
93 MQSeries Tech Introduction
Transactional Support
MQSeries for OS/390 RRS Support
Recoverable Resource Manager Service
(RRS)
94 MQSeries Tech Introduction
Transactional Support - Summary
• MQSeries allows for messages to
participate in unit of work processing
• MQSeries is a resource manager
• MQSeries can be a transaction
manager in some cases
• Consider unit of work processing in
application design
95 MQSeries Tech Introduction
Transactional Support
QUIZ
1. With in a unit of work changes are atomic T F
2. An MQPUT within a syncpoint control means :
a. Messages are not placed on a queue until the commit.
b. Messages are placed on the queue and the “getting” program needs to check the
sysncpoint flag.
c. Messages are placed on the queue but are not available to the “getting” program
until after the commit.
3. MQSeries clients can use global unit of work processing. T F
4. Global unit of work are supported for Oracle on which of the
following :
a. MQSeries for HP-UX b. MQSeries for Windows NT c. MQSeries for AIX
d. MQSeries for OS/390 e. MQSeries for Sun Solaris
96 MQSeries Tech Introduction
MQSeries Security
Objectives
• Describe security features of MQSeries
platforms
• Consider which features are appropriate
in a given environment
• Explain MQSeries' role regarding
security within and across enterprises
97 MQSeries Tech Introduction
MQSeries Security
Security Goals
98 MQSeries Tech Introduction
MQSeries Security
Components
• IBM Security Architecture
– SC28-8135 A Model for Securing Information Systems
• Contents
• Services
– Functions provided (for example - write-protect)
• Mechanisms
– Products and tools to implement the services (for example- OAM,
RACF))
• Objects
– Resources to be protected (for example - queues)
• Management
– Setup and maintenance of security functions and disciplines
99 MQSeries Tech Introduction
MQSeries Security
Security Services
100 MQSeries Tech Introduction
MQSeries Security
Implementation
101 MQSeries Tech Introduction
MQSeries Security
Security in MQSeries
102 MQSeries Tech Introduction
MQSeries Security
API Security
• Queue Security
– User IDs
– Options
• Process Security
• Namelist Security
• Context Security
– MQOPEN/MQPUT1
• Alternate User Security
103 MQSeries Tech Introduction
MQSeries Security
Command Security
• When command is issued
• Based on User ID
– Command Security
• May this user issue this command (for example
-DISPLAY QUEUE)
– Command Resource Security
• May this user change this resource (for
example -DELETE QLOCAL('Payroll')
104 MQSeries Tech Introduction
MQSeries Security
Message Context
105 MQSeries Tech Introduction
MQSeries Security
User IDs
106 MQSeries Tech Introduction
MQSeries Security
Remote Access
107 MQSeries Tech Introduction
MQSeries Security
MCA Security Exit
108 MQSeries Tech Introduction
MQSeries Security
Management and Audit
109 MQSeries Tech Introduction
MQSeries Security
Security Support
110 MQSeries Tech Introduction
MQSeries Security
Example - 1
111 MQSeries Tech Introduction
MQSeries Security
Example - 2
112 MQSeries Tech Introduction
MQSeries Security - Summary
• MQSeries uses security management
capabilities available on platform
• Access control is main thrust of
MQSeries' participation
• MQSeries administrator generally must
work with security administrator to
ensure proper implementation
113 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
Objectives
• List various links and bridges used with MQSeries
• Describe benefits of various links and bridges
• List other functions and products that make up the
MQSeries family
• Describe the benefits of those functions and products
114 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The IMS Bridge
115 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The CICS DPL Bridge
116 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The CICS 3270 Bridge
117 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The LotusScript Extension
118 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The Enterprise Integrator
119 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The Link for R/3
120 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The Internet Gateway
121 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
Java Configurations
122 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
MQSeries Pub/Sub
123 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
MQSeries Integrator
124 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
MQSeries Workflow
125 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
Summary
• MQSeries' use of links and bridges allows
greater access throughout an enterprise
• Links and bridges permit non-MQSeries
environments to communicate using assured
delivery of MQSeries
• Pub/Sub eases the eases distribution of
messages of messages
• MQSeries Integrator and MQSeries Workflow
extend the MQSeries family of products
126 MQSeries Tech Introduction
Linking , Bridging and the MQSeries Family
The MQSeries Platforms
127 MQSeries Tech Introduction
MQSeries Technical Introduction
Any Question
Thank you
128 MQSeries Tech Introduction