You are on page 1of 41

WebSphere MQ系统管理

议程

• 1.WebSphere MQ的安装

• 2.WebSphere MQ的管理配置

• 3.WebSphere MQ互联通信

• 4.WebSphere MQ触发机制
议程

• 1.WebSphere MQ的安装

• 2.WebSphere MQ的管理配置

• 3.WebSphere MQ互联通信

• 4.WebSphere MQ触发机制
WebSphere MQ的安装
Eclipse V3.3
需要使用到WebSphere MQ Explorer V7必须预先安装Eclipse 3.3
WebSphere MQ的安装
安装模式
WebSphere MQ的安装
网络配置
WebSphere MQ的安装
开始安装MQ
WebSphere MQ的安装
WebSphere MQ其他平台安装方式
• Linux:通过rpm包安装

• AIX:smit

• HPUnix: swinstall

• Sun Solaris: pkgadd

详细的安装步骤请查阅WebSphere MQ信息中心
议程

• 1.WebSphere MQ的安装

• 2.WebSphere MQ的管理配置

• 3.WebSphere MQ互联通信

• 4.WebSphere MQ触发机制
WebSphere MQ的管理配置
WebSphere MQ可以从本地或者远程管理对象。

本地管理是对在本地系统上定义的任何队列管理器执行管理任务。也可以访
本地管理
问其它系统,对其他系统进行管理。在 WebSphere MQ 中本地管理,因为
没有通道定义,它们之间的通信是由操作系统提供的。

WebSphere MQ 也支持远程管理
远程管理,可以从本地系统上发出一条命令到远程
远程管理
系统上运行,您也可使用 WebSphere MQ 资源管理器来实现这个功能。
MQ的远程管理需要通过服务器连接通道定义来通信。
WebSphere MQ的管理配置
使用MQ
使用 Explorer管理
管理MQ
管理
WebSphere MQ的管理配置
使用命令管理MQ
使用命令管理
• 控制命令
控制命令是用来维护队列管理器本身的管理命令。
例如: runmqchl 启动发送方或请求者通道

• MQSC
MQSC命令是用来管理队列管理器对象,包括队列管理器本身、通道、队列和进程定义。
可以使用 runmqsc 向队列管理器发出 MQSC 命令。命令的输入有两种方式,一种是交
互式命令,另一种是从ASCII 文本文件中重定向输入命令。

• PCF
WebSphere MQ 可编程命令格式(PCF)命令使得管理任务能编写到应用程序中。在
程序中可以创建队列和进程定义和更改队列管理器。PCF 命令和MQSC 命令具有相同
的命令集。 可使用 WebSphere MQ 管理接口(MQAI)可以更容易访问PCF 消息。
WebSphere MQ的管理配置
在完成WebSphere MQ的安装以后,我们需要对MQ进行相应的配置。

注意:保证当前的用户是属于mqm用户组
WebSphere MQ的管理配置
命名规则
• 允许的字符
– A-Z, a-z, 0-9
– ./_%

• 最多48
最多 个字符:
个字符
– queues
– processes
– queue managers

• 最多20
最多 个字符:
个字符
– channels

• 名称没有固定的格式

• 注意 MQSeries 中的名称区分大小写
注意:
WebSphere MQ的管理配置
• 创建队列管理器:crtmqm opt QMgrName
opt = 定制参数
-q 将创建的队列管理器作为默认的队列管理器
-lc 循环日志
-ll 线性日志
-lf 日志文件大小,4KB的倍数
-ld 日志文件目录
QMgrName 队列管理器名,不能超过49个字符,区分大小写

• 删除队列管理器:dltmqm opt QMgrName


WebSphere MQ的管理配置
队列管理器配置文件
• 在创建队列管理器时创建该文件

• qm.ini
– 在队列管理器目录下
– 对Windows,该文件内容被放置在系统注册表

• 内容
– 队列管理器日志的配置
– 可安装服务的细节
– 通道操作的相关数据
– 通信协议参数设置
– XA 资源管理器信息
WebSphere MQ的管理配置
队列管理器配置文件
• 在创建队列管理器时创建该文件

• qm.ini
– 在队列管理器目录下
– 对Windows,该文件内容被放置在系统注册表

• 内容
– 队列管理器日志的配置
– 可安装服务的细节
– 通道操作的相关数据
– 通信协议参数设置
– XA 资源管理器信息
WebSphere MQ的管理配置
• 每个系统一般有一个队列管理器
• 为了实验可以创建多个队列管理器
• 命名建议
– 一般要短
e.g. 与TCP/IP 主机名、Windows系统名或SNA LU别名等相同
– 在网络中要唯一
WebSphere MQ的管理配置
日志类型
WebSphere MQ的管理配置
• 启动队列管理器:strmqm QMgrName

• 停止队列管理器:endmqm opt QMgrName


opt参数设置
-c 正常停止, 等待所有应用断开连接,不接受新的连接(默认)
-i 立即停止, 完成所有MQI调用,但不接受新的调用
-p 强制结束, 不等待应用程序断开连接和MQI完成就停止
WebSphere MQ的管理配置
使用MQSC创建对象
• 交互模式

• 批处理模式
[c:\mqm]runmqsc < commands.in > report.out
WebSphere MQ的管理配置
使用MQSC创建对象
• 交互模式

• 批处理模式
[c:\mqm]runmqsc < commands.in > report.out
WebSphere MQ的管理配置
使用MQSC创建对象
• 定义队列
DEFINE QLOCAL(QueueName)

DEF QL(MY_QUEUE) REPLACE +


DESCR('This is my local queue') +
PUT(ENABLED) +
GET(ENABLED) +
DEFPSIST(YES) +
MAXDEPTH(1000) +
MAXMSGL(2000)

DEF QL(MY_QUEUE2) REPLACE +


LIKE(MY_QUEUE)
WebSphere MQ的管理配置
使用MQSC创建对象
• 显示队列属性
DISPLAY QUEUE(QueueName) ALL or Attribute
WebSphere MQ的管理配置
使用MQSC创建对象
• 改变队列属性
ALTERQLOCAL(QueueName) Attribute(Value)

• 删除队列
DELETE QLOCAL(QueueName)

• 清除队列消息
CLEAR QLOCAL(QueueName)
议程

• 1.WebSphere MQ的安装

• 2.WebSphere MQ的管理配置

• 3.WebSphere MQ互联通信

• 4.WebSphere MQ触发机制
WebSphere MQ互联通信(DQM)
WebSphere MQ互联通信(DQM)
WebSphere MQ的互联通信就是应用通过本地的MQ队列管理器与远程机器
的应用之间进行通信交互的过程。

DQM主要组件:
– 本地队列管理器
– 发送消息的应用
– (远程队列定义) + 传输队列
– 消息通道
– 目标本地队列
– 读取消息应用
– 远程队列管理器
WebSphere MQ互联通信(DQM)
传输队列
• 需要传输到远程目标队列的消息都先存储在本地的传输队列中
• 传输队列的消息头(MQXQH) 会被添加到消息中
– Queue manager name on remote system
– Local queue name on remote system
– Original message descriptor (MQMD)

• 对于一个远程队列管理器必须至少要有一个传输队列
• 创建传输队列 :
– Define local queue with USAGE(XMITQ) attribute
– DEFINE QLOCAL(XXX) USAGE(XMITQ)
WebSphere MQ互联通信(DQM)
应用连接传输队列的方式:
• 通过远程队列定义
– 对于应用来说可以屏蔽远程队列管理器和队列的定义

• 直接在程序中定义远程队列管理器和队列,连接传输队列
WebSphere MQ互联通信(DQM)
消息通道
• MQ和网络直接的桥梁渠道
• 组件
– 消息通道代理(MCA)
– 连接通道
• 通道是单向的
– 要实现双向的传递需要建立两组通道
– 在发送端和接收端,通道名称要相同才能匹配通信
WebSphere MQ互联通信(DQM)
远程队列定义
WebSphere MQ互联通信(DQM)
消息格式转换
WebSphere MQ互联通信(DQM)
通道出口
议程

• 1.WebSphere MQ的安装

• 2.WebSphere MQ的管理配置

• 3.WebSphere MQ互联通信

• 4.WebSphere MQ触发机制
WebSphere MQ触发机制
WebSphere MQ触发机制
1. Program A 将消息放入队列

2. 当符合触发条件,MQ查看进程对象,生成触发消息

3. MQ将触发消息放入初始化队列

4. MQ的触发监控读取触发消息,知道要触发 Program B

5. Program B 从相应的队列读取消息
WebSphere MQ触发机制
• 触发的条件类型:(通过设置队列的TRIGTYPE属性)
• 每一触发
• 第一条触发
• 深度触发

• 定义触发消息的优先级
• 可以指定符合相应优先级的消息触发,设置TRIGMPRI属性
WebSphere MQ触发机制
触发监视器(Windows,Linux,Unix)

• 本地程序:runmqtrim
• 客户端:runmqtrimc
WebSphere MQ触发机制
定义触发对象步骤
• 定义应用队列,并打开触发开关
• 定义初始化队列
• 定义进程对象
• 启动触发监视器
Q&A

You might also like