通常, 访问message queue有两种方式:
binding 和 client.
在容器中的应用, 通常我们采用binding方式.
而如果我们有一个需求, 非要访问一个远程的mq, 也就是要使用client方式, 该如何做?
其实,只需用mqsc命令在mqm中加一个类型为svrconn的channel, 然后开启mq的监听程序即可:
步骤如下:
client方式访问mq:
1:定义一个类型为SVRCONN的channel:
DEFINE CHANNEL('MyCHL') CHLTYPE(SVRCONN) TRPTYPE(TCP) HBINT(300) MAXMSGL(4194304) MCAUSER('mqm') REPLACE
2:修改/etc/services文件, 对MQ 开放1414端口(root或超级用户才有权限修改)在该文件中增加:
WebSphere MQ 1414/tcp # used by was mq
3: 运行mq的监听程序(监听1414端口)
runmqlsr -m your_mqm -t TCP
采用此方式, 可以远程访问mq, 甚至可以用MDB远程监听message queue.