United States
Department of
Agriculture
Office of the Chief Information Officer
“Partnering for Success”
[Link]/nitc
United States Department Office of the Chief
Of Agriculture Information Officer
WebSphere MQSeries
National Information
Technology Center
Messaging Fundamentals
WebSphere MQSeries enables application programs to
communicate with each other using messages and queues.
This form of communication is referred to as commercial
messaging.
There are two methods for applications to communicate:
Fire and Forget
Request/Response
Application Communications
Fire and Forget
Put Record Get Record
Program Program
A B
Record Queue
Request/Response
Put Record Get Record
Program Program
A B
Record Queue
Get Record Put Record
Processed Reply Processed
Message to Message
Queue
What is a message?
Message = Header(s) + Application Data
Header … Application Data
A message consists of a header and the attached application data.
Headers typically contain elements like:
• Unique Message Id
• Routing information
• Message format
The following are examples of the data part of a message:
• A record from an indexed or flat file
• A row from a DB2 table
• Individual columns from DB2 tables
• Multiple rows or records
What is a Queue?
A queue is simply a place to put data.
This figure shows how
messaging works in the
simple case where the
program putting the
message and program
getting the message are
both on the same
computer and connected
to the same queue
manager.
What is Queue Manager?
A queue manager is the subsystem software which controls access to
the individual queues assigned to it. The queue manager logs all activity
with each individual queue thus creating an audit trail. Multiple queue
managers can coexist with each other. The limiting factor is the
availability of system resources.
APPLICATIONS ANYWHERE
LOG/AUDIT
TRAIL
QUEUE
PUT GET MANAGER
DATA QUEUES
DATA
COMMUNICATIONS
ACF2/SECURITY
TCP/IP
Supported Platforms
WebSphere MQSeries supports the following platforms:
OS/390 MVS Windows
OS/390 Linux OS/2
AIX Open VMS
HP-UX Tandem NSK
Solaris:Intel & SPARC VSE
OS/400 Digital UNIX
Windows NT, 2000 Compaq Tru64 UNIX
Security
Version 6.0 offers improved support
for Secure Sockets Layer (SSL), the
Internet standard for secure
communication.
Application Programming
Interfaces (API)
WebSphere MQSeries Programming
APIs
Application Messaging Interface (AMI)
High level of abstraction, moves message handling logic into the middleware
AMI Policy name "How"
Service name "Where“
Available for C, C++, COBOL, Java
Java Message Service (JMS)
JMS Emerging Java standard underpinned by WebSphere MQSeries
Abstracts MQSeries details
Interface for J2EE/WebSphere
Message Queue Interface (MQI)
Native calls to provided functions are available in the following
MQI languages: 390 Assembler, C, C++, COBOL, COM, LotusScript, Java,
PL/1, VisualBasic
WebSphere MQSeries Programming
APIs
Message Queues
MQI AMI JMS
Applications
MQI, AMI, JMS all interoperate
Bridges/Adapters/Connectors
MQSeries Adapters
From IBM
– CICS Bridges, IMS Bridge, SAP Bridge,
Notes Bridge, ...
From 75 other vendors
More than 150 adapters
– databases, ERP, CRM, MOM, message
brokers, packaged
– applications, transaction managers
MQSeries Adapters
AS/400, AIX, OS2
Backend Systems
Unix
CICS MVS, DB2
IMS VSE
SAP R3
Bridge
J2EE CICS .NET
BaaN
MQSeries ERP
plus Integrator
AD tools access OLE-enabled
Environment
Cool: Gen,Netsoft, Progress, (Powerbuilder,
Seer, Tangent, VisualAge,.. VB, Delphi,....)
Internet
Gateway
Workgroup
Eg. Lotus
Notes
Java Web Client
Applets
Mobile Clients
Desktop Clients
Message Brokers
The Message Flow
A Message Flow is:
• A sequence of operations on a message
• Dependant upon message content
Process
Input Output
Message Brokering Example
Application A outputs:
Application 1 inputs:
Account Id, Trader Id,
Date, Customer Id,
Price, Quantity, Date,
Account Id, Price,
Customer Id
Quantity, Trader Id
Parse
Rules Application 2 inputs:
Transform Date, Price,
Quantity, Trader Id
Application B outputs: Application 3 inputs:
Customer Id, Account Id,
Trader Id, Price, Date, Customer Id,
Quantity, Date Price, Quantity
Publish/Subscribe
Subscriber
Publish Data
Publisher Publish Data
Subscriber
Subscriber
Publisher
Publisher
Subscribe to
Pub/Sub Published Data
Pub/Sub
Broker
Broker Subscriber
(List Server)
WebSphere MQSeries
Message/Queuing
Customer Benefits of MQSeries
Wide selection of available platforms
Network is transparent to the application programmer
Applications can be changed quickly and easily in
response to changing business needs
Applications run in an asynchronous manner -
parallelism
Assured delivery of information - anywhere in the
network
Transactional messaging support for coordinated
updating of multiple data sources
Trusted, dependable for mission critical applications
NITC Contact
“Partnering for Success”
is
Our Business
[Link]/nitc
NITCMQSeries@[Link]
Business Contact: 888-USE-NITC