在通信b / w队列管理器期间以及在MQ中使用amqsputc注入消息时无法访问主机名(端口)

时间:2015-05-17 06:04:40

标签: ibm-mq mq

我在本地主机上有两个队列管理器,名为QMA,运行在端口1414上,Q15在1415上运行。我在两个队列管理器上都定义了SDR-RCVR通道对。当我将消息放在远程队列上时,传输队列中最终会有SDR通道连续重试。我试图将Connection名称作为locat主机,我的主机名,IPaddress和127.0.0.1。然而,没有人能够解决问题。我在QMB上定义了SVRCONN通道并初始化了MQSERVER变量,如下所示: QMB.SVRCONN / TCP / AnilReddy-PC(1415)。正如我上面所说的,我已经更改了连接名称以使其正常工作,但它在错误日志中出现以下错误而中止:

通过TCP / IP从169.254.231.219(1415)接收数据时发生错误。这个 可能是由于沟通失败。

hostname响应ping,我可以看到监听器也在运行。我正在使用amqsputc来调整QMB队列中的消息。

请建议我解决此问题。提前感谢您节省时间来研究我的问题。

1 个答案:

答案 0 :(得分:0)

从QMB到QMA的SDR / RCVR通道配置看起来不正确,或者未在QMA中定义/运行侦听器。你需要这样的定义:

在QMA中:

def chl(TO.QMA) chltype(RCVR)
def listener(LISTENER.TCP2) trptype(TCP) port(2424)
start listener(LISTENER.TCP2)

在QMB中

def ql(QMA) USAGE(XMITQ)
def chl(TO.QMA) chltype(SDR) conname('localhost(2424)') xmitq(QMA)
start channel(TO.QMA)
def qremote(QR.SDLQ) RNAME(SYSTEM.DEFAULT.LOCAL.QUEUE) RQMNAME(QMA) XMITQ(QMA)

确保SDR和RCVR频道的名称相同。