MQ

本文详细介绍了MQ消息队列中通道的搭建步骤,包括创建队列管理器、定义监听端口、配置本地和远程队列、启动通道等。同时,强调了传输队列和远程队列的角色以及消息传递过程中的处理机制。还提供了检查通道连通性和消息跟踪的方法,以确保MQ通信的正确性。
摘要由CSDN通过智能技术生成

MQ通道搭建及连通性检查

在实现消息的跨队列管理器之间的传送时,通常会在本地队列管理器上配置远程队列和传输队列,在远端队列管理器上配置本地队列,并通过通道将两者连接起来。

应用程序一旦将消息通过MQPUT送出,则立即放入传输队列中。传输队列暂时存放待由通道发送的消息。一旦通道连通且条件允许,系统通信程序MCA会立即将消息送出。消息到达对方目标管理队列后,由对方的通信程序MCA接受下来并存放到相应的目标队列,即指定的本地队列。

传输队列本质上时一个本地队列,只是由系统通信进程MCA监护。如果应用放到传输队列的消息没有传输头(MQXQH),则不会被发送,而是按以下方式处理:

  • 如果队列管理器设置了缺省死信队列,则消息放入该死信队列
  • 如果未设置缺省死信队列,则对于非持久消息,消息被扔掉;对于持久消息,消息会滞留在传输队列中,可能会堵住后继的消息。

远程队列只是一个定义,并无队列实体。也就是说远程队列不能存放消息,只是指定目标队列的位置及传输路径。不同远程队列可以共用一个传输队列。消息通过远程队列放入传输队列时,会由队列管理器自动添加一个传输头(MQXQH),且传输头中的内容会根据远程队列定义自动填写。

通道搭建步骤:

建立队列管理器:crtmqm TEST1     crtmqm TEST2

启动队列管理器:strmqm TEST1      strmqm TEST2

进入队列管理器管理终端:runmqsc TEST1     runmqsc TEST2

定义监听端口:DEFINE LISTENER ('TEST1.TCP') TRPTYPE (TCP) PORT (11007) CONTROL (QMGR)

                         DEFINE LISTENER ('TEST2.TCP') TRPTYPE (TCP) PORT (11008) CONTROL (QMGR)

启动LISTENER: start LISTENER (TEST1.TCP)

                           start LISTENER (TEST1.TCP)

定义本地队列:define qlocal (TEST1Q) usage (xmitq)

                         define qlocal (TEST2Q) 

定义死信队列:DEFINE QL (DEAD1Q) DEFPSIST (YES) REPLACE

                         DEFINE QL (DEAD2Q) DEFPSIST (YES) REPLACE

定义SENDER通道:DEFINE CHANNEL ('TO.TEST2') CHLTYPE (SDR) TRPTYPE (TCP) CONNAME ('192.1.1.1(11007)') xmitq (TEST1Q)

定义RECEIVE通道:DEFINE CHANNEL ('TO.TEST2') CHLTYPE (RCVR) TRPTYPE (TCP)

启动通道:start chl (TO.TEST2)

定义远程队列:define qremote (QR1) rname (TEST2Q) rqmname (TEST2) xmitq (TEST1Q)

常见命令

--查看队列状态--
dspmq
--查看通道--
dis chs(*)
--查看队列深度--
display ql(Q_SVC2ADP_4_HTTP) curdepth

--清除队列消息--
clear ql(Q_SVC2ADP_4_HTTP)

--查看CCSID--
display qmgr all

--修改CCSID--
ALTER QMGR [FORCE] CCSID(5488)

--监听端口--
telnet IP 端口

消息跟踪

通过跟踪消息传递的过程,判断MQ的设置是否正确

1. 远程队列--qr

查看远程队列管理器,队列名字,查看本地传输队列xmitq()

2. 传输队列--ql

查看传输通道TRIGDATA

3. 传输通道--chs

查看本地ip,通道类型,远端服务器地址,端口,队列管理器,传输队列

发送通道和接收通道是不是running

查看网络通不通:

telnet 192.168.0.2 1415

          

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值