MQ集群同步响应消息返回问题

novo3791 2013-05-03 04:41:56
场景如下:
QM1、QM2、QM3都处在一个MQ集群之内,其中QM3上有一个集群队列QueueRequest作为请求消息队列,QM1、QM2上各有一个集群队列,都命名为QueueResponse。 应用A通过连接队列管理器QM1往QM3上的集群队列QueueRequest内发送请求消息;应用B通过连接队列管理器QM2也往QM3上的集群队列QueueRequest内发送请求消息;应用C作为服务提供方连接QM3从QueueRequest内取请求消息并处理后给回响应消息(约定:应用A只允许连接QM1;应用B只允许连接QM2;应用C只允许连接QM3)。
现在的问题是,应用C在只连接队列QM3的情况下,如何让对于应用A的响应消息回到QM1的QueueResponse内,让对于应用B的响应回到QM2的QueueResponse内.
...全文
622 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
mengliqiuxuan 2013-06-03
  • 打赏
  • 举报
回复
我使用的是C,MQOPEN的时候指定od.ObjectQMgrName,然后报错2087;按照您的方法换了JAVA做测试,还是报错2087,这个怎么解决?
novo3791 2013-05-30
  • 打赏
  • 举报
回复
2L和3L是另一种实现模式,也是可以的@
novo3791 2013-05-30
  • 打赏
  • 举报
回复
这个自己解决了,在Open队列的时候,设置一下目标队列管理器即可实现,java中代码如下: MQQueue qreq = qm.accessQueue(qName, MQC.MQOO_OUTPUT, qmgrName, null, null);
mengliqiuxuan 2013-05-28
  • 打赏
  • 举报
回复
错了,是3L
mengliqiuxuan 2013-05-28
  • 打赏
  • 举报
回复
我试了下,没有生效,4L知道具体如何设置才能生效么?谢谢
dickens88 2013-05-24
  • 打赏
  • 举报
回复
2楼说的有道理,对于请求应答模式,每条MQ请求消息MsgID是消息的唯一标示,在MQMD域里面可以看到,应答时correlID=MsgID 就可以标记这条应答消息是针对哪条请求而发的。同时ReplyToQ(回复消息队列的名称)、ReplyToQMgr可以控制消息往哪去
mengliqiuxuan 2013-05-09
  • 打赏
  • 举报
回复
MQ 消息头(MQMD),有2个字段,ReplyToQ(回复消息队列的名称)、ReplyToQMgr(回复消息队列所在队列管理器的名称),设置者2个字段去试试吧
mengliqiuxuan 2013-05-09
  • 打赏
  • 举报
回复
同求,mark一下

2,633

社区成员

发帖
与我相关
我的任务
社区描述
WebSphere 是 IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。
社区管理员
  • WebSphere社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧