• No results found

MQ15 - WebSphere MQ System Administration I

N/A
N/A
Protected

Academic year: 2021

Share "MQ15 - WebSphere MQ System Administration I"

Copied!
660
0
0

Loading.... (view fulltext now)

Full text

(1)V1.2.2.2. cover.  WebSphere MQ System Administration I for Distributed Platforms (Course Code MQ15). Instructor Guide ERC 7.0. IBM Certified Course Material.

(2) Instructor Guide. Trademarks IBM® is a registered trademark of International Business Machines Corporation. The following are trademarks of International Business Machines Corporation in the United States, or other countries, or both: AIX CICS FFST IMS Lotus Notes NetView OS/390 RACF ThinkPad WebSphere zSeries. AS/400 DYNIX/ptx First Failure Support Technology iSeries MQSeries Notes OS/400 SP2 TXSeries WIN-OS/2. BookManager Everyplace IBM Lotus MVS/ESA OS/2 QMF SupportPac VSE/ESA z/OS. Intel is a trademark of Intel Corporation in the United States, other countries, or both. Linux is a registered trademark of Linus Torvalds in the United States and other countries. Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. UNIX is a registered trademark of The Open Group in the United States and other countries. Other company, product and service names may be trademarks or service marks of others.. February 2003 Edition The information contained in this document has not been submitted to any formal IBM test and is distributed on an “as is” basis without any warranty either express or implied. The use of this information or the implementation of any of these techniques is a customer responsibility and depends on the customer’s ability to evaluate and integrate them into the customer’s operational environment. While each item may have been reviewed by IBM for accuracy in a specific situation, there is no guarantee that the same or similar results will result elsewhere. Customers attempting to adapt these techniques to their own environments do so at their own risk. © Copyright International Business Machines Corporation 1996, 2003. All rights reserved. This document may not be reproduced in whole or in part without the prior written permission of IBM. Note to U.S. Government Users — Documentation related to restricted rights — Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp..

(3) V1.2.2.2 Instructor Guide. TOC. Contents Trademarks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Instructor Course Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii Course Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv Agenda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii Unit 1. A Review of WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 Unit Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2 1.1 Facilities and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 WebSphere MQ - Commercial Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 Further Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9 Message and Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11 Applications Enabled by WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13 Queue Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15 MQI Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18 Message Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21 Asynchronous Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-23 Triggering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-25 Parallel Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-27 Client/Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29 Assured Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-31 Connectionless Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-33 Queue Manager Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-36 Distributed Queue Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-38 Message Driven Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-41 Separate Processes as Units of Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-43 Multiple, Asynchronous Units of Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-45 Message Persistence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-47 1.2 WebSphere MQ Products and Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-49 WebSphere MQ Queue Managers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-50 WebSphere MQ Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-54 WebSphere MQ Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-56 WebSphere MQ Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-59 Unit Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-64 Unit 2. Installation and Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 Unit Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 2.1 Planning an WebSphere MQ Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 Naming WebSphere MQ Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 Queue Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12 Special Local Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14 © Copyright IBM Corp. 1996, 2003 Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. Contents. iii.

(4) Instructor Guide. Message Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-17 Administration Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-20 WebSphere MQ Windows Administration Interfaces . . . . . . . . . . . . . . . . . . . . . . .2-24 2.2 Configuring a Queue Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-29 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-30 Create Queue Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-33 Start Queue Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-36 WebSphere MQ MQSC Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-39 Run WebSphere MQ Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-42 Creating a Local Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-45 Displaying Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-48 Other Queue Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-51 More WebSphere MQ Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-54 Sample Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-56 End Queue Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-59 Unit Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-64 Unit 3. The MQI and Triggering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 Unit Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-2 3.1 The MQI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6 Common Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-8 Object Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-10 Connecting and Disconnecting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-12 Opening and Closing an Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-15 Dynamic Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-18 Put Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-20 Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-23 Get Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-25 Reply-to Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-28 More Fields in the Message Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-30 Message and Correlation Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-32 Retrieving Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-35 Order of Retrieving Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-37 Message Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-40 Message Segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-43 Distribution List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-46 3.2 Triggering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-49 Components of Triggering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-50 Queue Attributes Controlling Triggering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-52 Process Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-55 Conditions for a Trigger Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-57 Other Conditions for a Trigger Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-59 Fields in the Trigger Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-61 Trigger Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-64 Trigger Monitor Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-67 3.3 WebSphere MQ Publish/Subscribe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-69 iv. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(5) V1.2.2.2 Instructor Guide. TOC. WebSphere MQ Publish/Subscribe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Installing WebSphere MQ Publish/Subscribe . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Up the Broker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controlling the Broker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Message Broker Exits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Unit Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3-70 3-73 3-75 3-78 3-81 3-84. Unit 4. Robust Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1 Unit Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 4.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5 Functional View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6 Physical View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9 Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12 Directory Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-14 Configuration Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-18 WebSphere MQ Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-21 MQS.INI Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24 Queue Manager Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26 QM.INI Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-29 Installable Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-31 Installable Services and Supplied Components . . . . . . . . . . . . . . . . . . . . . . . . . . 4-33 Stopping a Queue Manager Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-36 Removing a Queue Manager Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39 4.2 Problem Determination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-43 Configuration Files and Problem Determination . . . . . . . . . . . . . . . . . . . . . . . . . . 4-44 Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-46 First Failure Support Technology (FFST) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-49 Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-52 4.3 Transactions and Recovery. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-55 Message Persistence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-56 Types of Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-58 Recovering Persistent Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-60 Damaged Objects and Media Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-62 Dumping the Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-64 Syncpoint Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-66 Compensating Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-68 Coordinating Local Units of Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-70 Internal Coordination of Global Units of Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-72 Database Coordination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-74 External Coordination of Global Units of Work . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-77 CICS Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-80 Independent Coordination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-82 Unit Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-86 Unit 5. Distributed Queue Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 Unit Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3 5.1 Configuration for Distributed Queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-7 © Copyright IBM Corp. 1996, 2003 Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. Contents. v.

(6) Instructor Guide. Identifying a Queue in the MQI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-8 Assured Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-10 Queue Definitions for Distributed Queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-12 Message Channel Combinations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-14 Attributes of a Message Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-19 Choosing a Transmission Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21 Queue Manager Alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23 Separating Message Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25 Configuring TCP/IP for WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-27 Starting a Message Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-31 Channel Initiator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-34 Channel States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-38 5.2 The MQI in the Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-41 Data Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-42 Three Fields in the Message Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-44 Requesting Application Data Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-46 What Application Data Conversion Can Be Done? . . . . . . . . . . . . . . . . . . . . . . . .5-48 Writing a Data Conversion Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-50 How a Data Conversion Exit Is Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-52 What Applications Should Do . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-54 Command Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-56 Support for PCF Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-59 Program Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-61 Indirect Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-64 Instrumentation Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-66 Responding to an Instrumentation Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-69 Dead Letter Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-71 Dead Letter Queue Handler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-74 Using Dead Letter Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-76 5.3 WebSphere MQ Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-79 What Is a Cluster? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-80 Cluster Support Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-82 More About Repositories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-85 Setting Up a Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-88 DHCP Support in Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-90 Multiple Queue Occurrence - Workload Balancing . . . . . . . . . . . . . . . . . . . . . . . . .5-93 Workload Balancing - Rerouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-95 Cluster-Related Queue Manager Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-98 Controlling Clusters - Cluster Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-100 Controlling Clusters - DISPLAY CLUSQMGR . . . . . . . . . . . . . . . . . . . . . . . . . . .5-103 Cluster-Related Queue Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-105 Unit Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-110 Unit 6. More on Distributed Queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1 Unit Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-2 6.1 WebSphere MQ Family SupportPacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5 vi. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(7) V1.2.2.2 Instructor Guide. TOC. Overview of SupportPacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-6 Example: MD01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9 Example: MO01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 Example: MS03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-14 6.2 WebSphere MQ Clients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17 WebSphere MQ Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18 WebSphere MQ Clients Explained . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-20 Syncpoint Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-22 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-24 Defining a MQI Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-28 Two Ways of Configuring an MQI Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-30 Channel Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-34 Auto-Definition of Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-37 6.3 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-39 WebSphere MQ Security Implementations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-40 WebSphere MQ Access Control Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-42 Object Authority Manager: Installable Service . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-45 Object Authority Manager: Installable Service... . . . . . . . . . . . . . . . . . . . . . . . . . . 6-48 Object Authority Manager: Access Control Lists... . . . . . . . . . . . . . . . . . . . . . . . . 6-50 Object Authority Manager: The MQSeries 5.2 update . . . . . . . . . . . . . . . . . . . . . 6-52 Object Authority Manager V5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-54 Security Management: setmqaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-56 Security Management: dspmqaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-59 Security Management: dmpmqaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-61 Access Control for WebSphere MQ Control Programs . . . . . . . . . . . . . . . . . . . . . 6-63 Authority Checking in the MQI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-65 Security and Distributed Queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-67 Message Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-69 The Context Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-71 No Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-75 Passing Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-77 Alternate User Authority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-79 Setting Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-81 Channel Exit Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-83 Channel Exit Programs on MQI Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-88 Secure Sockets Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-90 SSL Handshake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-92 SSL Handshake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-94 SSL Handshake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-96 SSL Handshake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-98 SSL Handshake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-100 SSL Handshake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-102 QMGR Attributes for SSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-104 QMGR Authentication Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-106 Channel Attributes for SSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-108 Access Control for an WebSphere MQ Client . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-110 Remote Queueing and Clients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-112. © Copyright IBM Corp. 1996, 2003 Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. Contents. vii.

(8) Instructor Guide. Supplied Channel Exit Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-114 Unit Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-118 Unit 7. WebSphere MQ for Windows (optional) . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 Unit Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-2 7.1 WebSphere MQ for Windows (optional) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-5 Positioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-6 Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-8 Family Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-10 Channel Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-13 Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-16 Dial-up Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-19 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-22 Administration on Version 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-25 Administration on Version 2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-29 Supported WebSphere MQ Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-33 Initialization (INI) File on Version 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-36 MQSeries Definition (MQD) File on Version 2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . .7-39 Example of an MQD File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-42 Unit Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-46 Appendix A. Checkpoint Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1 Appendix B. Selected WebSphere MQ Constants . . . . . . . . . . . . . . . . . . . . . . . . . B-1 Appendix C. Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1 Appendix D. Glossary of terms and abbreviations . . . . . . . . . . . . . . . . . . . . . . . . D-1. viii. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(9) V1.2.2.2 Instructor Guide. TMK. Trademarks The reader should recognize that the following terms, which appear in the content of this training document, are official trademarks of IBM or other companies: IBM® is a registered trademark of International Business Machines Corporation. The following are trademarks of International Business Machines Corporation in the United States, or other countries, or both: AIX® CICS® FFST. AS/400® DYNIX/ptx® First Failure Support Technology iSeries MQSeries® Notes® OS/400® SP2® TXSeries® WIN-OS/2®. IMS Lotus Notes® NetView® OS/390® RACF® ThinkPad® WebSphere® zSeries. BookManager® Everyplace IBM® Lotus® MVS/ESA OS/2® QMF SupportPac VSE/ESA z/OS. Intel is a trademark of Intel Corporation in the United States, other countries, or both. Linux is a registered trademark of Linus Torvalds in the United States and other countries. Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. UNIX is a registered trademark of The Open Group in the United States and other countries. Other company, product and service names may be trademarks or service marks of others.. © Copyright IBM Corp. 1996, 2003 Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. Trademarks. xi.

(10) Instructor Guide. xii. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(11) V1.2.2.2 Instructor Guide. pref. Instructor Course Overview This course is designed to teach the basic skills required by an administrator for any of the WebSphere MQ Level 2 queue managers except WebSphere MQ for z/OS. The course does not therefore apply to the following queue managers. WebSphere MQ for z/OS The administration of this queue manager is the subject of the course MQ20, WebSphere MQ for z/OS System Administration.. Course Strategy The basic strategy for teaching the course is to use the material in the order in which it is written. However, you may like to consider the following variations. The WebSphere MQ for Windows NT administrative functions can only be used on the WebSphere MQ for Windows NT and Windows 2000 V5.1 or higher queue manager. Skip the charts referring to that function if no NT is involved. Many of the practical sessions can be done using WebSphere MQ for Windows. In fact it is only practical for session 2 on triggering, the last part of practical session 3, which is concerned with media recovery, and the last portion of practical session 4 on clusters that cannot be done using WebSphere MQ for Windows. If WebSphere MQ for Windows is made available, and if there are students interested in using it for the practical sessions, Unit 7 could be taught in a piecemeal fashion at certain points throughout the course.. © Copyright IBM Corp. 1996, 2003. Instructor Course Overview. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. xiii.

(12) Instructor Guide. xiv. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(13) V1.2.2.2 Instructor Guide. pref. Course Description WebSphere MQ System Administration I for Distributed Platforms Duration: 3 days Purpose To provide the basic skills required by an administrator for any of the MQSeries Level 2 queue managers except MQSeries for OS/390. Specifically, the queue managers covered by this course are as follows: • • • • • • • • • • • • • •. WebSphere MQ for AIX,V5.3 WebSphere MQ for iSeries WebSphere MQ for HP-UX, V5.3 WebSphere MQ for Linux for Intel, V5.3 WebSphere MQ for Linus for zSeries, V5.3 WebSphere MQ for Solaris, V5.3 (SPARC and Intel Platform Editions) WebSphere MQ for Windows MQSeries for Compaq OpenVMS Alpha MQSeries for Compaq OpenVMS VAX MQSeries for Compaq Tru64 UNIX MQSeries for OS/2 Warp MQSeries for SINIX and DC/OSx MQSeries for Tandem NonStop Kernel WebSphere MQ for Windows. Audience Technical personnel who require the skills to be an administrator for any of the MQSeries Level 2 queue managers except WebSphere MQ for z/OS, or to provide support to others performing this task.. Prerequisites The course assumes a knowledge of WebSphere MQ to the level covered by MQ01, A Technical Introduction to MQSeries. The participant should also be reasonably familiar with, and be able to invoke simple function within, the operating system environment used for the practical exercises. A basic knowledge of how SNA LU6.2, TCP/IP, or NetBIOS is configured would be advantageous.. © Copyright IBM Corp. 1996, 2003 Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. Course Description. xv.

(14) Instructor Guide. Objectives After completing this course, you should be able to: • Plan the implementation of WebSphere MQ on a selected platform • Install WebSphere MQ • Perform simple customization and administration tasks • Enable a queue manager to exchange messages with another • Enable a queue manager to support an WebSphere MQ client • Implement basic restart/recovery procedures • Perform basic problem determination. Contents • • • • • • •. A Review of WebSphere MQ Installation and Configuration The MQI and Triggering Robust Messaging Distributed Queue Management More on Distributed Queuing WebSphere MQ Everyplace. In theory, the practical exercises may be done using any of the queue managers covered by the course. In practice, however, the systems used for a specific class will depend on the equipment available. The exercise guide is tested for WebSphere MQ for Windows and for WebSphere MQ on UNIX Systems.. Curriculum relationship • Course providing prerequisite knowledge: - MQ01: A Technical Introduction to WebSphere MQ • Other WebSphere MQ courses: - MQ05: WebSphere MQ Application Programming - MQ20: WebSphere MQ for z/OS System Administration - MQ30: WebSphere MQ Advanced System Administration. xvi. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(15) V1.2.2.2 Instructor Guide. pref. Agenda Day 1 (00:15) Welcome (00:30) A Review of WebSphere MQ (01:00) Installation and Configuration (01:00) Exercise 1 - Working with queues (02:00) The MQI, Triggering and Publish/Subscribe (01:15) Exercise 2 - Implementing triggering. Day 2 (01:30) Robust Messaging (00:45) Exercise 3 - Recovery (02:15) Distributed Queue Management (01:30) Exercise 4 - Distributed queuing. Day 3 (00:30) Queue Manager Clusters (01:15) Exercise 5 - A simple cluster (01:30) More on Distributed Queuing (01:00) Exercise 6 - Implementing clients (00:45) WebSphere MQ for Everyplace. © Copyright IBM Corp. 1996, 2003 Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. Agenda. xvii.

(16) Instructor Guide. xviii WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(17) V2.0 Instructor Guide. Uempty. Unit 1. A Review of WebSphere MQ What This Unit is About This unit provides an introduction to WebSphere MQ and its products. It forms the basis for the remainder of the course.. What You Should Be Able to Do After completing this unit, you should be able to: • Describe the features and benefits of WebSphere MQ • Identify the level of function in each WebSphere MQ queue manager • Classify the application models that WebSphere MQ can support • Find further information on specific aspects of WebSphere MQ. How You Will Check Your Progress Accountability: • Checkpoint questions • Instructor questions. References SC34-6055. WebSphere MQ Script (MQSC) Command Reference. SC34-6068. WebSphere MQ System Administration Guide. If using WebSphere MQ for iSeries use: SC34-6070. © Copyright IBM Corp. 1996, 2003. WebSphere MQ doe iSeries V5.3 System Administration Guide. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-1.

(18) Instructor Guide. 8QLW2EMHFWLYHV $IWHUFRPSOHWLQJWKLVXQLW\RXVKRXOGEHDEOHWR 5HYLHZ:HE6SKHUH04FRQFHSWV (QVXUHVWXGHQWVKDYHQHFHVVDU\SUHUHTXLVLWHNQRZOHGJH (VWDEOLVKJRDOVRIFRXUVH. Figure 1-1. Unit Objectives. MQ157.0. Notes: This unit provides an introduction to WebSphere MQ and its products. It forms the basis for the remainder of the course. After completing this unit, the student should be able to: • Describe the features and benefits of WebSphere MQ. • Identify the level of function of each WebSphere MQ queue manager. • Classify the application models that WebSphere MQ can support. • Find further information on specific aspects of WebSphere MQ.. 1-2. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(19) V2.0 Instructor Guide. Uempty. Instructor Notes: Purpose — To highlight the unit objectives. Details — In theory, all students should have attended the course MQ01, A Technical Introduction to WebSphere MQ, before attending this one, and so this unit should merely be a revision of previously acquired knowledge. Transition Statement — We start by looking at the benefits that WebSphere MQ can provide.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-3.

(20) Instructor Guide. 1-4. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(21) V2.0 Instructor Guide. Uempty. 1.1 Facilities and Functions This topic provides an introduction to the facilities and functions of WebSphere MQ and discusses the benefits they provide.. Instructor Topic Introduction What students will do — Students will listen to a review of the facilities and functions of WebSphere MQ. For all students, it should simply be a revision of what was covered in the course MQ01, A Technical Introduction to WebSphere MQ. How students will do it — No student activities are planned for this topic. What students will learn — Students will learn the benefits of WebSphere MQ and the types of applications it can support. How this will help students on their job — This knowledge will help the students to understand the reasons for selecting WebSphere MQ in the first place.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-5.

(22) Instructor Guide. :HE6SKHUH04&RPPHUFLDO0HVVDJLQJ &RPPRQDSSOLFDWLRQSURJUDPPLQJLQWHUIDFH $VVXUHGPHVVDJHGHOLYHU\ 7LPHLQGHSHQGHQWSURFHVVLQJ $SSOLFDWLRQSDUDOOHOLVP )DVWHUDSSOLFDWLRQGHYHORSPHQW. B eue Qu. A. eue Qu. Figure 1-2. WebSphere MQ - Commercial Messaging. MQ157.0. Notes: WebSphere MQ is a means of program-to-program communication using messages and queues. The communicating applications can be on the same system, or they can be distributed across a network of IBM and non-IBM systems. As well as depicting the basic mechanism by which one application communicates with another, the visual also states five major benefits of WebSphere MQ. • There is a common application programming interface, the MQI, that is consistent across all the supported platforms. • WebSphere MQ can transfer data with assured delivery; messages don't get lost, even in the event of a system failure. Just as important, there is no duplicate delivery. • The communicating applications don't have to be active at the same time. For example, a sending application can still be putting messages on a queue even though the receiving application is not active. • Message driven processing is an style of application design. An application is divided into discrete functional modules which communicate with each other by means of 1-6. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(23) V2.0 Instructor Guide. Uempty. messages. In this way, the modules can execute on different systems, be scheduled at different times, or they can act in parallel. • Application development is made faster by shielding the developer from the complexities of the network.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-7.

(24) Instructor Guide. Instructor Notes: Purpose — To explain the principle of program to program communication through the use of messages and queues, and to state the benefits of WebSphere MQ. Details — Additional Information — None. Transition Statement — Next we look at where we can find more information about WebSphere MQ.. 1-8. WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(25) V2.0 Instructor Guide. Uempty. )XUWKHU,QIRUPDWLRQ :HE6SKHUH04SXEOLFDWLRQV 0DQ\DUHFURVVSODWIRUP )RULQIRUPDWLRQWKDWLVFRPPRQ )RUSODQQLQJDQGLPSOHPHQWLQJDQ:HE6SKHUH04QHWZRUN 6RPHDUHSODWIRUPVSHFLILF KWWSZZZLEPFRPVRIWZDUHWVPTVHULHV /DWHVWQHZV 5HIHUHQFHV %HWDFRGH 6XSSRUW3DFV. Figure 1-3. Further Information. MQ157.0. Notes: The WebSphere MQ publications are listed in the bibliography at the back of these course notes. Some publications describe function that relates to two or more queue managers, the so called cross-platform publications. Other publications are platform-specific. Discover WebSphere MQ on the World Wide Web. The Web address for the WebSphere MQ home page is: http://www.ibm.com/software/ts/mqseries/. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-9.

(26) Instructor Guide. Instructor Notes: Purpose — To identify other sources of information about WebSphere MQ. Details — These notes alone don't contain all there is to know, and certainly not the latest news. Additional Information — None. Transition Statement — Next we consider two basic questions. What is a message, and what is a queue?. 1-10 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(27) V2.0 Instructor Guide. Uempty. 0HVVDJHDQG4XHXH $PHVVDJHLV $XQLWRILQIRUPDWLRQ $UHTXHVWIRUDVHUYLFH $UHSO\ $UHSRUW $QDQQRXQFHPHQW $TXHXHLV $VDIHSODFHWRVWRUHPHVVDJHV /LQHGXSIRUVHUYLFLQJ 6WDJHGIRUGHOLYHU\. Figure 1-4. Message and Queue. MQ157.0. Notes: A message is any information that one application wishes to communicate to another. A message may convey a request for a service, or it may be a reply to such a request. It may also report on the progress of another message; to confirm its arrival or report on an error, for example. A message may also simply carry information for which no reply is expected. A queue is a place to store messages until they can be processed. The time a message has to wait in order to be retrieved and processed could be very short, or it could be a long time if it has to wait for the receiving application to be started. Either way, the ability to store a message safely is an important characteristic of a queue.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-11.

(28) Instructor Guide. Instructor Notes: Purpose — To clarify what is meant by a message and a queue. Details — Additional Information — None. Transition Statement — Next we see that a wide range of applications can be built on these simple concepts.. 1-12 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(29) V2.0 Instructor Guide. Uempty. $SSOLFDWLRQV(QDEOHGE\:HE6SKHUH04 3URJUDPWRSURJUDPFRPPXQLFDWLRQIRU 0HVVDJHGULYHQSURFHVVLQJ &OLHQWVHUYHULPSOHPHQWDWLRQ 'LVWULEXWHGSURFHVVLQJ &RPSRQHQWVRIDQDSSOLFDWLRQFDQUXQLQGHSHQGHQWO\RQGLIIHUHQW V\VWHPVDQGHQYLURQPHQWV $SSOLFDWLRQVZLWKVHYHUDOSURFHVVLQJVWHSV 6RPHIDVW 6RPHVORZ 6RPHQRWLPPHGLDWHO\DYDLODEOH 1RORVVRUGXSOLFDWLRQRILQIRUPDWLRQ. Figure 1-5. Applications Enabled by WebSphere MQ. MQ157.0. Notes:. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-13.

(30) Instructor Guide. Instructor Notes: Purpose — To explain how the basic concepts of WebSphere MQ can be applied to a wide range of business applications. Details — The simple concepts of a message and a queue are not new. They are ones that enable applications to work in many different ways. The components of an application can run independently on different systems and environments, and may involve a number of processing steps. A key aspect of WebSphere MQ with respect to messages and queues is the assurance against the loss or duplication of messages. Additional Information — None. Transition Statement — Next we introduce the concept of a queue manager, and the application programming interface it provides to an application.. 1-14 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(31) V2.0 Instructor Guide. Uempty. 4XHXH0DQDJHU. 3URJUDP. 3URJUDP. 3URJUDP. 04,. $0,. -06. 4XHXH 0DQDJHU. 4 4 4. $TXHXHPDQDJHURZQVDQGPDQDJHVTXHXHV )DPLO\RIDSSOLFDWLRQSURJUDPPLQJLQWHUIDFHV 7KH0HVVDJH4XHXH,QWHUIDFH 04,

(32)  7KH$SSOLFDWLRQ0HVVDJLQJ,QWHUIDFH $0,

(33) 7KH-DYD0HVVDJH6HUYLFH -06

(34) Figure 1-6. Queue Manager. MQ157.0. Notes: • The component of WebSphere MQ software which owns and manages queues is called a queue manager. • A queue manager also provides a family of application programming interfaces. - The Message Queue Interface (MQI) enables an application to access its queues and the messages they contain. The MQI is a simple application programming interface which is consistent across all platforms supported by WebSphere MQ. The MQI effectively protects applications from having to know how a queue manager physically manages messages and queues. The MQI allows full access to WebSphere MQ messaging support. - The Application Messaging Interface (AMI) is a high-level API that simplifies programming for application messaging and publish/subscribe. It provides a high level of abstraction, moving message-handling logic from the application into the middleware. The AMI allows programmers to use policies and services to define how and where the messages are sent.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-15.

(35) Instructor Guide. - The Java Message Service (JMS) is a specification of a portable API for asynchronous messaging. JMS has been developed by Sun Microsystems in collaboration with IBM and other vendors interested in promoting industry wide standard frameworks. JMS is an object-oriented Java API with a set of generic messaging objects for programmers to write event-based messaging applications. JMS supports both request/reply and publish/subscribe models as separate object models. JMS is available in WebSphere MQ V5.2. • All three of the APIs can interoperate.. 1-16 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(36) V2.0 Instructor Guide. Uempty. Instructor Notes: Purpose — To introduce the concept of a queue manager and the three APIs: The MQI, the AMI and the JMS. Details — Having a common application programming interfaces across all supported platforms is one of the major benefits of WebSphere MQ. We shall see later the platforms which are supported. Additional Information — None. Transition Statement — Next we look a little more closely at the calls provided by the MQI.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-17.

(37) Instructor Guide. 04,&DOOV <RXFDQVHQGPHVVDJHVDWRQHHQG 04387 04387 DQGWKH\DUULYHUHOLDEO\DWWKHRWKHU 04*(7 2WKHUFDOOV 04&21104&211;DQG04',6& 0423(1DQG04&/26( 04,14DQG046(7 04%(*,104&0,7DQG04%$&.. Figure 1-7. MQI Calls. MQ157.0. Notes: The most basic calls allow an application to put a message on a queue and get a message from a queue. MQPUT and MQPUT1 Put a message on a named queue. Generally, a message is added to the end of a queue. MQGET. Gets a message from a named queue. Generally, a message is removed from the front of a queue.. The other calls are as follows. MQCONN, MQCONNX, and MQDISC Enable an application to connect to a queue manager and disconnect from a queue manager. An application must connect to a queue manager before it can issue any further MQI calls. MQOPEN and MQCLOSE Enable an application to open a queue for specified operations and close 1-18 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(38) V2.0 Instructor Guide. Uempty. the queue when access to it is no longer required. An application must open a queue before it can access it in any way; to put messages on it, or get messages from it, for example. MQINQ and MQSET Inquire on and set the attributes of an object. All WebSphere MQ objects, such as a queue, a process, and the queue manager object, have a set of attributes. MQBEGIN, MQCMIT, and MQBACK Enable an application to put and get messages as part of a unit of work.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-19.

(39) Instructor Guide. Instructor Notes: Purpose — To introduce the calls in the MQI. Details — The visual lists all the MQI calls. Sample programs illustrating their use are supplied with WebSphere MQ. Additional Information — We shall discuss the MQI calls in a little more detail later. The following references provide more information. • The Application Programming Reference describes each call in the MQI and, more generally, defines the MQI. • The WebSphere MQ Application Programming Reference describes each call in the MQI and, more generally, defines the MQI. • The WebSphere MQ Application Programming Guide describes all the samples programs delivered With WebSphere MQ. It also provides the information required to build an application. Transition Statement — Next we look at a simple application model and introduce the message descriptor.. 1-20 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(40) V2.0 Instructor Guide. Uempty. 0HVVDJH'HVFULSWRU 4. 3URJUDP$. 3URJUDP%. 4. (DFKPHVVDJHKDVDPHVVDJHGHVFULSWRU $SSOLFDWLRQGHWHUPLQHVPHVVDJHFRQWHQW 0HVVDJH GHVFULSWRU. $SSOLFDWLRQ GDWD 0HVVDJH. Figure 1-8. Message Descriptor. MQ157.0. Notes: A message consists of two parts: • Message descriptor • Application data The message descriptor contains information about the message. The sending application supplies both the message descriptor and the application data when it puts a message on a queue, and both the message descriptor and the application data are returned to the application which gets the message from the queue. Some of the fields in the message descriptor are set by the application which puts the message on a queue; others are set by the queue manager on behalf of the application.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-21.

(41) Instructor Guide. Instructor Notes: Purpose — To explain the basic conversational model, and to introduce the message descriptor. Details — The simplest application model using messages and queues is depicted on the visual. Program A puts a request message on queue Q1 and then waits for a reply to appear on queue Q2 before continuing. Program B gets the message from queue Q1 and puts the required reply message on queue Q2 to complete the process. In the basic conversational model depicted on the visual, a message descriptor will accompany the message that is put on queue Q1, and another will accompany the message that is put on queue Q2. Additional Information — None. Transition Statement — The basic conversational model is a synchronous one. Next, we shall look at an asynchronous version.. 1-22 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(42) V2.0 Instructor Guide. Uempty. $V\QFKURQRXV0RGHO. 3URJUDP$. 3URJUDP;. 4. 3URJUDP%. 4. 6HSDUDWHSURFHVVIRUUHSOLHV 1RQHHGIRUFRPPXQLFDWLQJSURJUDPVWREH DFWLYHDWWKHVDPHWLPH 7LPHLQGHSHQGHQFH. Figure 1-9. Asynchronous Model. MQ157.0. Notes: • In the asynchronous model, instead of waiting for a reply to its first message, Program A continues to send further requests to Program B. It is a separate process, Program X, which receives the replies when they arrive. • In this model, Program A is not dependent on Program B to be running when the requests are sent. It can continue to do work even when Program B is stopped. • Of course the application does expect Program X to receive the replies at some time, but not necessarily at the same time that Program A or Program B is running. All this illustrates another of the major benefits of WebSphere MQ, time independence.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-23.

(43) Instructor Guide. Instructor Notes: Purpose — To explain the asynchronous model and how it leads to the benefit of time independence. Details — Nothing in addition to the student notes. Additional Information — None. Transition Statement — Next we look at how triggering enhances the implementation of time-independent processing.. 1-24 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(44) V2.0 Instructor Guide. Uempty. 7ULJJHULQJ 4XHXH0DQDJHU 3URJUDP%. $SSOLFDWLRQ 4XHXH. . . 04*(7$4. 3URJUDP$. . 04387$4.  3URFHVV 2EMHFW. 7ULJJHU0RQLWRU . . 04*(7,4. ,QLWLDWLRQ 4XHXH. 7ULJJHULQJDOORZV ,QVWDQWLDWLRQDVUHTXLUHG &RQVHUYDWLRQRIV\VWHPUHVRXUFHV $XWRPDWLRQRIIORZ Figure 1-10. Triggering. MQ157.0. Notes: WebSphere MQ provides an enhancement to the implementation of time-independent processing, triggering. The arrival of a message on an application queue may indicate that it is an appropriate time for another application to be started in order to process the messages on the application queue. When the right conditions are detected by the queue manager, it is the triggering facility which starts the application to service the application queue. We will revisit triggering in some depth later.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-25.

(45) Instructor Guide. Instructor Notes: Purpose — To introduce the concept of triggering. Details — The previous example showed how Program A could continue running even though its partner, Program B, was stopped. Of course, Program B must start some time. Additional Information — None. Transition Statement — Next we look at how WebSphere MQ allows parallel processing within an application.. 1-26 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(46) V2.0 Instructor Guide. Uempty. 3DUDOOHO3URFHVVHV 04387$''54. $''5. 04387. $''54. 04387%$/4 04387&24. %$/4. 04*(75HSO\WR TXHXH. &24. %$/. &2. 04387. 5HSO\WRTXHXH. 04387. 5HTXHVWVQRWVHULDOL]HG. 3RVVLEO\VHOHFWLYH04*(7". 6KRUWHUHODSVHGWLPH. ,QFRPSOHWHVHWRIUHSOLHV". &RQVROLGDWHUHSOLHV. 'LIIHUHQWSURFHVVWRKDQGOHUHSOLHV". Figure 1-11. Parallel Processes. MQ157.0. Notes: • This model allows several requests to be sent by a application without the application having to wait for a reply to one request before sending the next. All the requests can then be processed in parallel. • The application can process the replies when they have all been received, and produce a consolidated answer. The program logic might also specify what to do when only a partial set of replies is received within a given period of time.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-27.

(47) Instructor Guide. Instructor Notes: Purpose — To explain how WebSphere MQ enables applications to be built in which units of processing can be performed in parallel, and perhaps even on different systems. Details — A more complex application may involve sending a number of requests to different servers. For example, a travel agent might use an application to arrange a trip for a customer. The requirements of the customer might mean that the application needs to make a number of requests - to make an airline reservation, to book a hotel room, to run a credit check, and so forth. By using queues, these steps don't have to be performed serially. The requests can be put on different queues, and processed in parallel. The application might then wait until it has received all the replies before preparing a consolidated response. Alternatively, the business logic may define a time limit to wait for the replies. In which case, the application may present some form of partial response with limited information after that time has elapsed. As we have seen previously, the application design may involve having a separate process to receive and process the replies. Additional Information — None. Transition Statement — Next we look at how WebSphere MQ can be used to implement client/server applications.. 1-28 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(48) V2.0 Instructor Guide. Uempty. &OLHQW6HUYHU ,QVXUDQFH GDWD ,QVXUDQFH TXRWDWLRQV ,QVXUDQFH DJHQW Server. 4XHXH VHUYLFH 0HVVDJH UHTXHVW. ,QVXUDQFH DJHQW ,QVXUDQFH DJHQW. 5HSO\WRTXHXHQDPHLQPHVVDJH GHVFULSWRU &OLHQWV. 0XOWLSOHLQVWDQFHVRIVHUYHU SRVVLEOH. Figure 1-12. Client/Server. MQ157.0. Notes: • The server application, Insurance quotations, can handle requests from multiple client applications. The message descriptor identifies the appropriate reply-to queue for each request.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-29.

(49) Instructor Guide. Instructor Notes: Purpose — To explain how a queue can be viewed as a service, and how multiple clients can request the same service. Details — The previous examples have described how a single client application can put messages on one or more queues in order to request the services of the applications serving those queues. In general, multiple applications may put messages on the same queue in order to request the same service. The application serving the queue gets each message in turn and responds to it. The message descriptor of each request message plays an important role here. One of the fields in the message descriptor is the name of the reply-to queue. This informs the server application where to put the reply message. In this way, each client application can receive its replies separately from those of the other client applications. The message descriptor also has a field to hold an identifier for a message. Furthermore, the message descriptor of a reply message can contain the identifier of the request message to which it relates. In this way, a client application can correlate a reply with a request it sent previously. Additional Information — None. Transition Statement — Next we look at the benefit of assured message delivery.. 1-30 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(50) V2.0 Instructor Guide. Uempty. $VVXUHG'HOLYHU\. 3URJUDP$. 4 4W. 40. 3URJUDP%. 4W 4. 40. 7UDQVPLVVLRQTXHXHVWRUHVPHVVDJHILUVW $SSOLFDWLRQQRWVWRSSHGLIOLQNLVLQDFWLYH. Figure 1-13. Assured Delivery. MQ157.0. Notes: • Assured delivery is another benefit of WebSphere MQ. It is the result of the protocol used when one queue manager transmits a message to another queue manager. As far as the applications are concerned, this process of transmitting messages is performed asynchronously and transparently, and the protocol ensures that no message is lost, or delivered to its destination queue more than once.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-31.

(51) Instructor Guide. Instructor Notes: Purpose — To describe how WebSphere MQ stages the delivery of messages to a remote queue manager through the use of a transmission queue, and to highlight the benefit of assured delivery. Details — In many cases, communicating applications will reside on different systems. These applications still communicate with each other using the MQI and they don't need to know that they are remote from each other. When an application opens a queue, it is the queue manager to which the application is connected which recognizes whether the queue is local, that is, a queue it owns, or whether the queue is remote, that is, a queue owned by another queue manager. If it is a remote queue, the queue manager stores messages destined for that queue on a staging queue called a transmission queue. By doing this, the application putting the messages can continue to operate even if the communications link is down. Like any other queue, a transmission queue stores messages securely until they can be processed. Asynchronously and transparently to any applications connected to it, the queue manager gets each message in turn from the transmission queue and transmits it to the remote queue manager, which then places the message on its respective destination queue. It is the protocol used by the two queue managers which ensures that no message is lost or delivered more than once. This is the assured delivery property of WebSphere MQ, and is one of the major benefits of WebSphere MQ. In the example depicted on the visual, Program A puts a message on queue Q1. The queue manager to which Program A is connected, QM1, knows that Q1 is a remote queue and so puts the message on a transmission queue, Qt. Asynchronously, queue manager QM1 transmits the message to queue manager QM2 which puts it on queue Q1. The message then becomes available for Program B to get. When Program B puts a reply message on queue Q2, the delivery of the message is likewise staged by the message being stored on a transmission queue. Additional Information — None. Transition Statement — Next we look at how the WebSphere MQ approach to program to program communication can be viewed as connectionless.. 1-32 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(52) V2.0 Instructor Guide. Uempty. &RQQHFWLRQOHVV&RPPXQLFDWLRQV. 3URJUDP$ 3URJUDP%. 3URJUDP&. 3URJUDP'. 4 4. 4W 40. 0HVVDJH GHVFULSWRU. 40 7UDQVPLVVLRQTXHXHKHDGHU. 'HVWLQDWLRQ TXHXHQDPH. 'HVWLQDWLRQ 2ULJLQDO TXHXHPDQDJHU PHVVDJH QDPH GHVFULSWRU. $SSOLFDWLRQ GDWD. Figure 1-14. Connectionless Communications. MQ157.0. Notes: • If applications connected to one queue manager are putting messages on multiple queues owned by another queue manager, only one transmission queue is required to stage the delivery of these messages, and only one communications connection is required between the two queue managers.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-33.

(53) Instructor Guide. Instructor Notes: Purpose — To explain why program-to-program communication using WebSphere MQ can be considered connectionless. Details — You don't have to have a separate transmission queue for every remote queue. In the example depicted on the visual, Program A and Program B are both putting messages on remote queues Q1 and Q2. But since the queues are owned by the same queue manager, QM2, the queue manager to which Program A and Program B are connected can use the same transmission queue. Furthermore, only one communications connection is required between queue manager QM1 and queue manager QM2. A communications connection is an SNA LU6.2 conversation, a TCP connection, and so on. The implications of all this is as follows: • In order for multiple applications connected to one queue manager to communicate with multiple applications connected to another queue manager, only one communications connection between the two queue managers is required. Each pair of communicating applications does not need its own communications connection. This is what is meant by connectionless communications using WebSphere MQ. • Only requiring one transmission queue and one communications connection means less administration. If only one transmission queue and one communications connection are required, how does queue manager QM2 know on which queue to put each message it receives? The answer is as follows: When queue manager QM1 puts a message on a transmission queue, it places a transmission queue header in front of the application data. The transmission queue header contains, among other things, the following information. • The name of the destination queue, for example, Q1 or Q2. • The name of the destination queue manager, for example, QM2. • The original message descriptor, that is, the one supplied by the application which put the message. Effectively, queue manager QM1 concatenates the transmission queue header with the application data to form an extended version of the application data which has its own message descriptor. It is this extended application data which is ultimately transmitted to queue manager QM2. When queue manager QM2 receives the extended application data, it is able to reconstitute the original message descriptor and application data. And from the destination queue name and destination queue manager name, queue manager QM2 is able to determine on which destination queue the message should be put. Additional Information — None.. 1-34 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(54) V2.0 Instructor Guide. Uempty. Transition Statement — Next we look at how this means that applications are decoupled from the network.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-35.

(55) Instructor Guide. 4XHXH0DQDJHU1HWZRUN 6\VWHP 3URJUDP$. 043874. 6\VWHP. 3URJUDP%. 043874. 04*(74. 3URJUDP&. 04,. 04*(74. 4XHXH PDQDJHU. 4XHXH PDQDJHU. 4 4. 1HWZRUN. $SSOLFDWLRQVVKLHOGHGIURPWKHQHWZRUN 04387FDOOVLGHQWLFDO 1RUHPRWH04*(7FDOO 8QGHOLYHUDEOHPHVVDJHV". Figure 1-15. Queue Manager Network. MQ157.0. Notes: • Applications are shielded from the complexities of the underlying network. The application programmer does not have to be concerned with writing programs to interfaces such as APPC, CPI-C, or sockets, nor with writing code to handle communications errors. Under the covers of the MQI, WebSphere MQ provides all this for you. Applications, and by implication their programmers, do not even need to be aware of the locations of queues where they put messages.. 1-36 WebSphere MQ System Administration I. © Copyright IBM Corp. 1996, 2003. Course materials may not be reproduced in whole or in part without the prior written permission of IBM..

(56) V2.0 Instructor Guide. Uempty. Instructor Notes: Purpose — To explain how the MQI shields applications, and application programmers, from the complexities of the underlying network. Details — An application which puts a message on a queue using the MQI does not need to be aware of whether the queue is local or remote. This and other properties of the MQI mean that the detail and complexities of the underlying network are hidden from applications and their programmers. The visual depicts two examples. • Program A puts two messages, one on a local queue Q1 and one to a remote queue Q2. The two MQPUT calls it uses to do this are essentially identical. • Program B gets a message from queue Q1 and Program C gets a message from queue Q2. Again, the two MQGET calls are essentially identical and in no way depend on where the respective messages originated. Note, however, that an application can only use an MQGET call to get a message from a local queue. With WebSphere MQ, all the communications programming and error handling has been done for you. Additional Information — None. Transition Statement — Next we look in a little more detail at how messages are transmitted from one queue manager to another.. © Copyright IBM Corp. 1996, 2003. Unit 1. A Review of WebSphere MQ. Course materials may not be reproduced in whole or in part without the prior written permission of IBM.. 1-37.

References

Related documents

of all three species. Basal area exhibited a negative effect on abundance of pine seedlings but a 316.. first positive, later negative) on abundance of evergreen and marcescent oak

The data balancing techniques we use, especially SMOTE, enable us to reach excellent results, where we reduce the number of traces needed for a successful attack up to 8 times..

Provided EM U aims at implementing a cyclically-adjusted mechanism while eliciting member states’ private information, the mechanism proposed in this paper presents one major di

Instead, there are sizeable di ff erences for GDP growth, and the Chow-Lin backdated series for Germany produces the best results at the euro area level, in terms of stability of

MIA-mi is a feature-length, micro-budget, and digital motion picture, produced, written, and directed by Yesenia Lima in pursuit of the Master of Fine Arts in Entrepreneurial

association between perceived stress and level of physical activity among college students 9.. (Nguyen-Michel, Unger, Hamilton, &amp; Spruijt-Metz, 2006), and the authors claimed

Some studies are reporting higher physical activity in the population of university students compared to normal population (Arai, 2006). Is that true? Next question is a lifestyle

According to Schiefele, (as cited in Paris &amp; Turner, 1995, p.664) “when students can choose tasks and texts they are interested in, they expend more effort learning