- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MQ知识培训
MQ知识培训
Ver0.91
一、MQ基本知识介绍
MQ是IBM的消息中间件,主要为不同平台或软件提供可靠、异步、不重复的消息传送。而且它支持多种通讯协议,在MQ网关的支持下,也能实现网络间的传输。
现在MQSeries已经作为IBM的Websphere产品的一部分,称为Websphere MQ。
1、Messages(消息)
消息就是一系列字节,为各种应用程序所使用。对于MQ而言,Message(消息)包括2部分,应用程序写入的消息数据部分以及MQ增加的消息描述部分。这部分描述主要包括一些优先级、目的队列。目的队列管理器、报告等的属性值
2、Queue(队列)
队列就是存放消息的一个数据结构。程序或队列管理器可从队列取出、放入消息。通常可以定义队列存放的最大的消息数目、每条消息的最大长度。还可以定义该队列是否允许取出或放入消息。
队列可分为本地队列(local queue)、远程队列(remote queue)和传输队列(transmit queue)。
本地队列是指队列实体存在于本地的队列管理器内的。
远程队列是指队列实体存在于别的队列管理器内的。
传输队列则是一种特殊的本地队列,其用途主要为不同队列管理器间的通讯提供一个消息存放的实体。
3、Queue Manager(队列管理器)
队列管理器就是为外部的应用提供队列服务以及管理本地队列及消息发送的控制等。
4、Channel(通道)
通道为队列管理器提供了通讯的基础,现在可分两种通道:消息通道和MQI通道。
消息通道为两个队列管理器间提供通讯的基础。
MQI通道主要为MQClient端提供访问MQServer的通讯基础。
二、MQ基本操作
建立侦听端口
在WINDOWS下面可以定义自动启动队列侦听器。
用命令行(可在多种系统下通用)的方式为:
runmqlsr –t 协议名 –m 队列管理器名 –p 侦听端口
一般默认端口为1414。
2、建立队列管理器间的消息通道
双方各建立一发送方通道与接收方通道。需要注意的是发送方通道的名字需要与对方接收方通道的名字一样。如:
队列管理器A,有发送方通道A.B、接收方通道B.A
则队列管理器B需要定义如下:发送方通道B.A、接收方通道A.B
另,如果对方管理器的侦听端口不是默认端口(1414),则建立发送方通道的时候在连接名称不仅需要填上对方的主机名(或IP地址)还需要以带(port)的形式把对方管理器的侦听端口填上。
如:winserver(50000)则表示连接到winserver这台主机侦听端口为50000的队列管理器上。
注:如果需要建立一个永久连接则需要把心跳间隔的时间定为0,否则一定时间内没消息发送的话,队列管理器会自动断开连接的。
3、建立远程队列实现消息的传送
在建立好消息通道后就可以建立远程队列指定对方的管理器名与对方的队列名。
注:在定义发送方通道的时候需要指定一个传输队列。而定义远程队列的时候也需要指定一个传输队列。必须注意此2个队列的一致性,否则可能把消息发送到不同的队列管理器上了。
三、命令行下的操作
1、启动队列管理器
strmqm 队列管理器名
2、停止队列管理器
endmqm 队列管理器名
3、创建队列管理器
crtmqm 队列管理器名
4、删除队列管理器
dltmqm 队列管理器名
5、进入MQSC管理模式
runmqsc 队列管理器名
6、启动侦听端口
runmqlsr –t 协议名 –p 端口 –m 队列管理器名
7、停止侦听端口
endmqlsr –m 队列管理器名
8、显示目前已经创建的队列管理器
dspmq
注:此命令仅在MQ5.2以上才适用。
9、在进入MQSC管理模式(即执行第五步)命令简单介绍
a、启动通道
start chl(通道名)
b、停止通道
stop chl(通道名)
c、检查通道
ping chl(通道名)
d、通道复位
reset chl(通道名)
e、解决未知状态
resolve chl(通道名) action(commit)
f、显示所有本地队列名
dis ql(*)
g、显示所有通道名
dis chl(*)
四、使用C/C++编写访问MQ的程序
使用公司内部的类:
CMQManager
提供的方法有:
//连接到指定的队列管理器
bool connectQManager(const char* QManagerName);
//用指定的方式打开队列、默认为读取方式
bool accessQueue(const char* QueueName,int OpenMethod = MQMA_READ|MQMA_WRITE);
//获取最近的错误代码
long getLastErrorCode();
//关闭队列的连接
void closeQueue()
您可能关注的文档
最近下载
- 顶管专项施工方案(土压平衡-专家意见修改版).doc VIP
- 2025福建新华发行(集团)有限责任公司三明分公司会计岗位招聘考试参考题库附答案解析.docx VIP
- 中学教学设施设备配备标准资料.pdf VIP
- 项目范围管理交流材料.ppt VIP
- T_MCYX 005-2024 茉莉花茶茶艺技术规程 (盖碗泡饮法).docx VIP
- 艺术品市场与投资-一位艺术品投资顾问的介绍.pptx VIP
- 秦汉单元教学设计.docx VIP
- 山西省忻州市偏关县2024届六年级下学期小升初精选语文试卷含答案.doc VIP
- 2025福建新华发行(集团)有限责任公司三明分公司会计岗位招聘考试备考题库及答案解析.docx VIP
- 轨道列车司机(城市轨道交通列车司机)五级培训班练习题.docx VIP
文档评论(0)