Websphere MQ 入门教程——
使用 IBM Websphere MQ
提纲
第 1 页 共 217 页
目录
目录................................................................................................................................................... 2
前言................................................................................................................................................... 9
本书范围................................................................................................................................... 9
本书读者................................................................................................................................... 9
进一步参考资料 ..................................................................................................................... 10
第一部分 Websphere MQ 原理和体系结构 ................................................................................. 11
第一章 Websphere MQ 原理 .......................................................................................................... 11
目标......................................................................................................................................... 11
1.1 中间件............................................................................................................................... 11
1.1.1 中间件的优点 ........................................................................................................ 11
1.1.2 中间件的分类 ........................................................................................................ 12
1.2 三种通信技术的比较 ....................................................................................................... 13
1.3 WebSphere MQ 的原理 .................................................................................................... 15
1.4 WebSphere MQ 的重要特点 ............................................................................................ 16
1.4.1 统一接口 ................................................................................................................ 16
1.4.2 处理不依赖时间的限制 ........................................................................................ 16
1.4.3 给分布式处理提供的强健的中间件 .................................................................... 16
1.5 本章小节........................................................................................................................... 17
1.6 本章练习........................................................................................................................... 17
第二章 Websphere MQ 体系结构 .................................................................................................. 18
目标......................................................................................................................................... 18
2.1 基本概念........................................................................................................................... 18
2.1.1 WebSphere MQ 对象(objects) ............................................................................... 18
2.1.2 消息 ....................................................................................................................... 19
2.1.3 队列 ....................................................................................................................... 20
2.1.4 队列管理器 ............................................................................................................ 24
2.1.4 通道 ........................................................................................................................ 25
2.1.5 进程 ........................................................................................................................ 29
2.1.6 群集 ........................................................................................................................ 29
2.1.7 名称列表 ................................................................................................................ 29
2.1.8 认证信息对象 ........................................................................................................ 30
2.1.9 系统缺省对象 ........................................................................................................ 30
2.1.10 MQI(message queue interface) ....................................................................... 30
2.2 体系结构........................................................................................................................... 30
2.2.1 WebSphere MQ 和消息排队 ................................................................................. 31
2.2.2 队列管理器的进程 ............................................................................................... 32
2.3 客户机和服务器 ............................................................................................................... 33
客户机-服务器环境中的 WebSphere MQ 应用程序 ............................................... 33
2.4 触发机制........................................................................................................................... 33
2.4.1 触发的概念 ............................................................................................................ 33
第 2 页 共 217 页
2.4.2 触发类型 ................................................................................................................ 34
2.4.3 触发的工作原理 .................................................................................................... 35
2.5 队列管理器群集 .............................................................................................................. 36
2.5.1 群集的概念 ........................................................................................................... 36
2.5.2 群集的优点 ........................................................................................................... 37
2.5.3 群集的组件 ........................................................................................................... 38
2.5.4 创建群集 ............................................................................................................... 38
2.5.5 实现负载均衡 ....................................................................................................... 39
2.5.6 群集管理 ............................................................................................................... 40
2.6 本章小结........................................................................................................................... 41
2.7 本章练习........................................................................................................................... 41
第二部分 Websphere MQ 系统管理 ............................................................................................. 43
第三章 WebSphere MQ 系统安装 ................................................................................................. 43
目标......................................................................................................................................... 43
3.1 规划安装.......................................................................................................................... 43
3.1.1 硬件要求 ............................................................................................................... 43
3.1.2 软件要求 ............................................................................................................... 44
3.2 安装 WebSphere MQ ...................................................................................................... 46
3.2.1 WebSphere MQ 文档 ............................................................................................ 46
3.2.2 WebSphere MQ 安装 ............................................................................................. 47
3.3 验证安装.......................................................................................................................... 49
3.3.1 安装验证 ................................................................................................................ 49
3.3.2 测试对象 ................................................................................................................ 49
3.4 本章小结.......................................................................................................................... 50
3.5 本章练习........................................................................................................................... 50
第四章 WebSphere MQ 的管理 .................................................................................................... 51
目标......................................................................................................................................... 51
4.1 本地和远程管理 .............................................................................................................. 51
4.2 使用命令管理 WebSphere MQ ...................................................................................... 51
4.2.1 控制命令 ................................................................................................................ 52
4.2.2WebSphere MQ 脚本(MQSC)命令 .................................................................. 52
4.2.3PCF 命令................................................................................................................ 54
4.3 WebSphere MQ 配置 ....................................................................................................... 56
4.3.1 在 Windows 系统上更改配置信息 ..................................................................... 56
4.3.2 在 UNIX 系统上更改配置信息 ......................................................................... 57
4.4 WebSphere MQ 安全性 ................................................................................................... 60
管理 WebSphere MQ 的权限 ....................................................................................... 60
使用 WebSphere MQ 对象的权限 ................................................................................ 61
4.5 WebSphere MQ 事务性支持 ........................................................................................... 61
4.6 WebSphere MQ 死信队列处理程序 ............................................................................... 62
4.7 本章小结........................................................................................................................... 62
4.8 本章练习........................................................................................................................... 63
第五章 WebSphere MQ 控制命令 ................................................................................................ 64
目标......................................................................................................................................... 64
第 3 页 共 217 页
5.1 如何使用控制命令 .......................................................................................................... 64
WebSphere MQ 对象的名称 ......................................................................................... 64
5.2 控制命令.......................................................................................................................... 65
控制命令集 ..................................................................................................................... 65
控制命令举例 ................................................................................................................. 66
5.3 本章小结.......................................................................................................................... 66
5.4 本章练习........................................................................................................................... 66
第六章 WebSphere MQ 互连通信 ................................................................................................ 68
目标......................................................................................................................................... 68
6.1 基本概念........................................................................................................................... 68
6.1.1 什么是互连通信 ................................................................................................... 68
6.1.2 分布式队列组件 ................................................................................................... 72
6.1.3 死信队列 ............................................................................................................... 75
6.1.4 怎样到达远程队列管理器 .................................................................................... 75
6.2 实现应用程序通信 .......................................................................................................... 77
6.2.1 发送消息到远程队列管理器 ................................................................................ 77
6.2.2 触发通道 ................................................................................................................ 79
6.2.3 消息的安全性 ........................................................................................................ 80
6.2.4 WebSphere MQ 对象配置实例 ............................................................................. 81
6.3 通道的维护 ....................................................................................................................... 83
6.3.1 通道的状态 ............................................................................................................ 83
6.3.2 通道维护命令 ........................................................................................................ 84
6.3.3 设置 MaxChannels 和 MaxActiveChannels 属性 ................................................. 88
6.4 配置侦听程序 ................................................................................................................... 88
6.4.1 Windows 平台 ....................................................................................................... 88
6.4.2 unix 平台............................................................................................................... 88
6.5 本章小结........................................................................................................................... 89
6.6 本章练习........................................................................................................................... 89
第七章 WebSphere MQ 恢复和重新启动 ................................................................................... 90
目标......................................................................................................................................... 90
7.1 WebSphere MQ 的数据日志 ............................................................................................ 91
7.1.1 日志的概念 ............................................................................................................ 91
7.1.2 日志控制文件 ........................................................................................................ 91
7.1.3 日志类型 ................................................................................................................ 92
7.1.4 计算日志的大小 .................................................................................................... 92
7.2 使用数据日志进行恢复 .................................................................................................. 93
7.2.1 从掉电或通信故障中恢复 .................................................................................... 94
7.2.2 恢复受损对象 ........................................................................................................ 94
7.3 保护 WebSphere MQ 日志文件 ..................................................................................... 96
7.4 备份和恢复 WebSphere MQ ........................................................................................... 96
7.4.1 备份 WebSphere MQ ............................................................................................ 96
7.4.2 恢复 WebSphere MQ ............................................................................................ 96
7.5 恢复方案........................................................................................................................... 97
7.5.1 磁盘故障 ................................................................................................................ 97
第 4 页 共 217 页
7.5.2 受损的队列管理器对象 ........................................................................................ 98
7.5.3 受损的单个对象 .................................................................................................... 98
7.5.4 自动媒体恢复故障 ................................................................................................ 98
7.6 使用 dmpmqlog 命令转储日志 ..................................................................................... 98
7.7 本章小结......................................................................................................................... 101
7.8 本章练习......................................................................................................................... 102
第八章 WebSphere MQ 问题诊断 ............................................................................................. 102
目标....................................................................................................................................... 102
8.1 错误日志......................................................................................................................... 102
8.1.1 日志文件 .............................................................................................................. 103
8.1.2 忽略 WebSphere MQ for Windows 的错误代码................................................. 104
8.1.3 操作信息 .............................................................................................................. 104
8.2 死信队列......................................................................................................................... 104
8.3 配置文件和问题确定 ..................................................................................................... 104
8.4 跟踪................................................................................................................................. 104
8.4.1WebSphere MQ Windows 的跟踪 ........................................................................ 104
8.4.2WebSphere MQ AIX 的跟踪 ................................................................................ 106
8.5 首次故障支持技术(FFST) ........................................................................................ 109
8.5.1FFST: WebSphere MQ Windows 版 .................................................................... 109
8.5.2FFST: WebSphere MQ UNIX 系统版 ................................................................. 110
8.6 本章小结......................................................................................................................... 112
8.7 本章练习......................................................................................................................... 112
第三部分 Websphere MQ 应用开发 .......................................................................................... 113
第九章 设计 Websphere MQ 应用程序 ...................................................................................... 113
目标....................................................................................................................................... 113
9.1 介绍应用设计 ................................................................................................................. 113
9.1.1 规划设计 ............................................................................................................. 113
9.1.2 WebSphere MQ 对象 .......................................................................................... 113
9.1.3 设计消息 ............................................................................................................. 114
9.1.4 WebSphere MQ 技术 .......................................................................................... 114
9.1.5 应用编程 .............................................................................................................. 115
9.1.6 测试应用程序 ..................................................................................................... 116
9.2 WebSphere MQ 消息 ...................................................................................................... 116
9.2.1 消息描述符 .......................................................................................................... 116
9.2.2 消息种类 .............................................................................................................. 116
9.2.3 消息控制信息和消息数据的格式 ...................................................................... 117
9.2.4 消息优先级 .......................................................................................................... 117
9.2.5 消息组 .................................................................................................................. 118
9.2.6 消息持久性 .......................................................................................................... 118
9.2.7 检索消息 .............................................................................................................. 119
9.2.8 交付失败的消息 .................................................................................................. 119
9.3 本章小结......................................................................................................................... 119
9.4 本章练习......................................................................................................................... 119
第十章 用 MQI 编程 ................................................................................................................... 119
第 5 页 共 217 页
目标....................................................................................................................................... 119
10.1 概述............................................................................................................................... 119
10.2 平台和语言 .................................................................................................................. 120
10.3 库和存根模块程序 ...................................................................................................... 121
10.4 体系结构模型 .............................................................................................................. 122
10.5 用 MQI 编程 .................................................................................................................. 124
10.5.1 基本 API 概念 .................................................................................................. 125
10.5.2 连接到队列管理器 ........................................................................................... 126
10.5.3 打开 WebSphere MQ 对象 ............................................................................... 127
10.5.4 关闭 WebSphere MQ 对象 ............................................................................... 130
10.5.5 断开与队列管理器的连接 ............................................................................... 130
10.5.6 将消息放入队列 ............................................................................................... 131
10.5.7 从队列获取消息 ............................................................................................... 133
10.5.8 从队列浏览消息 ............................................................................................... 135
10.5.9 查询对象属性 .................................................................................................... 136
10.5.10 设置对象属性 .................................................................................................. 138
10.5.11 MQI 中的事务处理 ......................................................................................... 139
10.5.12 MQI 中的消息分组 ......................................................................................... 140
10.6 本章小结 ....................................................................................................................... 142
10.7 本章练习 ....................................................................................................................... 142
第十一章 用 C++ API 编程 ....................................................................................................... 143
目标....................................................................................................................................... 143
11.1 概述.............................................................................................................................. 143
11.2 平台和语言 .................................................................................................................. 144
11.3 库................................................................................................................................... 144
11.4 体系结构模型 ............................................................................................................... 145
11.5 用 C++ API 编程 .......................................................................................................... 146
11.5.1 连接到队列管理器 ............................................................................................ 147
11.5.2 打开 WebSphere MQ 对象 ................................................................................ 147
11.5.3 关闭 WebSphere MQ 对象 ............................................................................... 148
11.5.4 断开与队列管理器的连接 ............................................................................... 148
11.5.5 消息放入队列 ................................................................................................... 148
11.5.6 从队列获取消息 ................................................................................................ 150
11.5.7 浏览队列上的消息 ............................................................................................ 153
11.5.8 查询并设置对象属性 ........................................................................................ 153
11.5.9 事务处理管理 .................................................................................................... 155
11.5.10 消息分组 .......................................................................................................... 155
11.6 本章小结 ....................................................................................................................... 157
11.7 本章练习 ....................................................................................................................... 157
第十二章 用 Java 编程................................................................................................................ 158
目标....................................................................................................................................... 158
12.1 概述.............................................................................................................................. 158
12.2 平台.............................................................................................................................. 158
12.2.1 获得软件包 ....................................................................................................... 158
第 6 页 共 217 页
12.2.2 WebSphere MQ for Java 的运行环境 ............................................................... 159
12.3 使用 WebSphere MQ for Java ..................................................................................... 161
12.3.1 客户机连接模式 ................................................................................................ 161
12.3.2 绑定模式 ............................................................................................................ 162
12.3.3 类库 ................................................................................................................... 162
12.4 用 WebSphere MQ Java API 开展工作 ...................................................................... 164
12.4.1 设置连接 ........................................................................................................... 164
12.4.2 打开队列 ........................................................................................................... 165
12.4.3 处理 WebSphere MQ 消息 ............................................................................... 166
12.5 应用程序开发 ............................................................................................................... 167
12.5.1 简单的消息发送器应用程序 ............................................................................ 168
12.5.2 简单的消息接收应用程序 ................................................................................ 170
12.5.3 请求/回复 ........................................................................................................... 172
12.5.4 回复应用程序 .................................................................................................... 175
12.5.5 消息分组 ............................................................................................................ 177
12.5.6 简单的组接收应用程序 .................................................................................... 180
12.6 本章小结 ....................................................................................................................... 183
12.7 本章练习 ....................................................................................................................... 183
第十三章 用 ActiveX 编程 ......................................................................................................... 183
目标....................................................................................................................................... 183
13.1 概述.............................................................................................................................. 183
13.2 平台和语言 .................................................................................................................. 184
13.3 库.................................................................................................................................. 185
13.4 架构模型 ...................................................................................................................... 185
13.5 用 WebSphere MQ automatin classes for ActiveX 编程 ............................................. 186
13.5.1 连接到队列管理器 ........................................................................................... 186
13.5.2 打开 WebSphere MQ 对象 ............................................................................... 187
13.5.3 基本操作 ........................................................................................................... 189
13.5.4 关闭对象 ........................................................................................................... 191
13.5.5 关闭连接 ........................................................................................................... 192
13.6 事务处理管理 .............................................................................................................. 192
13.7 分组.............................................................................................................................. 195
13.8 本章小结 ...................................................................................................................... 195
13.9 本章练习 ....................................................................................................................... 195
第十四章 用 AMI 编程 ............................................................................................................... 195
目标....................................................................................................................................... 195
14.1 概述.............................................................................................................................. 196
14.2 平台和语言 .................................................................................................................. 198
14.3 库和包.......................................................................................................................... 199
14.4 体系结构模型 .............................................................................................................. 201
14.5 用 AMI 编程 ................................................................................................................ 202
14.5.1 连接到队列管理器 ........................................................................................... 202
14.5.2 打开 WebSphere MQ 对象 ............................................................................... 204
14.5.3 基本操作 ........................................................................................................... 208
第 7 页 共 217 页
14.5.4 删除会话并关闭连接 ....................................................................................... 212
14.6 AMI 和 MQI 的比较 .................................................................................................... 213
14.7 事务处理管理 .............................................................................................................. 213
14.8 分组.............................................................................................................................. 215
14.9 本章小结 ....................................................................................................................... 215
14.10 本章练习 ..................................................................................................................... 215
附录一 WebSphere MQ 的缺省系统对象 .................................................................................. 215
第 8 页 共 217 页