MQ中将消息发送至远程队列的配置

本教程介绍如何使用WebSphere MQ设置两台计算机间的队列管理器QM_ORANGE与QM_APPLE进行消息传递。主要内容包括创建队列管理器、队列、消息通道及测试消息发送与接收。

摘自MQ资源管理器帮助文档V7

在开始学习本教程之前,您需要从系统管理员处了解标识网络上接收机器的名称:IP地址、MQ的端口号、队列管理器、接收(远程机器)或者是发送的队列(本地机器)名称

消息传递如图示:

 

本教程介绍了如何设置一台计算机上的队列管理器 QM_ORANGE 与另一台计算机上的队列管理器 QM_APPLE 之间的消息传递。在第一台计算机上创建的消息被传递到第二台计算机上的队列 Q1(此队列被称为远程队列)。

要点: 在本教程中,您将使用创建了队列管理器 QM_APPLE 和本地队列 Q1 的机器作为接收机器。

您将在发送机器上设置队列管理器和队列(远程队列定义和传输队列)。然后定义消息通道。最后,您将把测试消息放入发送机器,并从接收机器上的队列获取该消息。

完成本教程后,您应该基本了解如何使用远程队列定义来设置和使用 WebSphere® MQ 消息传递。

一、              在发送机器上创建队列管理器

二、              在发送队列管理器上创建队列

三、              创建消息通道

四、              将测试消息放入队列

五、              验证是否已发送测试消息

一、在发送机器上创建队列管理器

在发送机器上使用 WebSphere MQ 资源管理器创建队列管理器

无法远程完成此过程。必须在发送机器上本地完成此过程。

  1. 启动 WebSphere MQ 资源管理器。
  2. 在导航器视图中,右键单击队列管理器文件夹,然后单击新建 > 队列管理器 此时会打开创建队列管理器向导。
  3. 在队列管理器名称字段中,输入 QM_ORANGE。
  4. 选中设置为缺省队列管理器复选框。
  5. 单击下一步两次以转至向导的步骤 3。
  6. 确保选中启动队列管理器复选框。
  7. 确保选中自动启动队列管理器复选框。
  8. 单击下一步以转至向导的步骤 4。
  9. 确保选中创建配置用于 TCP/IP 的侦听器复选框。
  10. 如果完成按钮不可用,那么在侦听端口号字段中输入另一个端口号。 如果当前值为 1414,那么尝试输入 1415 或 1416。
  11. 单击完成。

WebSphere MQ 资源管理器的导航器视图中的队列管理器文件夹中会显示表示此队列管理器的图标,并且在您创建队列管理器后,该队列管理器会自动开始运行。

使用 MQSC 创建发送队列管理器

在发送机器上打开命令提示符,然后按照以下步骤操作:

  1. 通过输入以下命令来创建名为 QM_ORANGE 的缺省队列管理器:

crtmqm -q QM_ORANGE

此时会显示消息,告诉您已经创建了队列和缺省 WebSphere MQ 对象。

  1. 通过输入以下命令来启动此队列管理器:

strmqm

此时会显示一条消息,告诉您何时启动了该队列管理器。

  1. 现在,您必须通过输入以下命令来创建侦听器:

runmqlsr -m QM_APPLE -t TCP -p (port number)

注: 如果未使用 -p 参数指定任何端口,那么使用缺省端口 1414,但请注意,不能对发送方和接收方使用相同的端口号,因此,如果其中一个为 1414,那么另一个就应该是 1415。

您现在已经创建了发送队列管理器。下一个任务是在此队列管理器上创建队列。

二、在发送队列管理器上创建队列

使用 WebSphere MQ 资源管理器在发送队列管理器上创建队列

在发送队列管理器上:

  1. 在导航器视图中,展开队列管理器文件夹。
  2. 展开队列管理器 QM_ORANGE。
  3. 右键单击队列文件夹,然后单击新建 > 远程队列定义... 此时会打开新建远程队列定义向导。
  4. 在名称字段中,输入 Q1。
  5. 在远程队列字段中,输入 Q1。 【注:这里新建的远程队列的名称,一定要和远程机器上的队列名称相同,否则消息会发出去,但是远程机器的队列里面收不到消息,如上文提到的的Q1与Q1,或者是如下图的testQ与testQ:
  6. 在远程队列管理器字段中,输入 QM_APPLE。
  7. 在传输队列字段中,输入 QM_APPLE。
  8. 单击完成。 您现在已经创建了远程队列定义。
  9. 单击 QM_ORANGE 队列管理器。
  10. 右键单击队列文件夹,然后单击新建 > 本地队列 此时会打开新建本地队列向导。
  11. 在名称字段中,输入 QM_APPLE。
  12. 在用途字段中,选择传输。
  13. 单击完成。 您现在已经在本地机器上创建了传输队列。

内容视图中将会显示新队列 Q1 和 QM_APPLE。

如果内容视图中未显示这些队列,请单击位于内容视图顶部的“刷新”按钮 

使用 MQSC 来在发送队列管理器上创建队列

在发送机器上打开命令提示符,然后按照以下步骤操作:

  1. 通过输入以下命令来启动 MQSC:

runmqsc

此时会显示一条消息,告诉您 MQSC 会话已启动。

  1. 通过输入以下命令来定义名为 QM_APPLE 的本地队列:

define qlocal (QM_APPLE) usage (xmitq)

此时会显示一条消息,告诉您何时创建了该队列。

  1. 通过输入以下命令来定义远程队列定义:

define qremote (Q1) rname (Q1) rqmname(QM_APPLE) xmitq (QM_APPLE)

您现在已经在发送队列管理器上创建了队列。下一个任务是创建发送队列管理器和接收队列管理器之间的消息通道。

三、创建消息通道

使用 MQ 资源管理器创建消息通道

  1. 接收队列管理器 QM_APPLE 上,创建通道的接收方端:
    1. 在导航器视图中,展开先前创建的队列管理器 QM_APPLE,然后展开高级文件夹。
    2. 右键单击通道文件夹,然后单击新建 > 接收方通道... 此时会打开新建接收方通道向导。
    3. 在名称字段中,输入 QM_ORANGE.QM_APPLE。
    4. 单击完成。 您现在已经在接收机器上创建了接收方通道。
  2. 发送队列管理器 QM_ORANGE 上,创建通道的发送方端:
    1. 展开先前创建的队列管理器 QM_ORANGE,然后展开高级文件夹。
    2. 右键单击通道文件夹,然后单击新建 > 发送方通道... 此时会打开新建发送方通道向导。
    3. 在名称字段中,输入 QM_ORANGE.QM_APPLE,然后单击下一步。
    4. 在连接名称字段中,输入接收机器的计算机名称或 IP 地址(您应该已经在系统管理员的帮助下获得此信息)。
    5. 在传输队列字段中,输入 QM_APPLE。
    6. 单击完成。
    7. 单击通道文件夹。
    8. 右键单击 QM_ORANGE.QM_APPLE。
    9. 从弹出菜单中,单击启动。
    10. 单击确定。 您现在已经在发送机器上创建了发送方通道。

注: 您不必启动接收方通道,因为它会在您设置发送方通道时自动启动(当设置发送方通道时,您指定了接收方通道的IP 地址)。

现在,已经在接收队列管理器 QM_APPLE 上创建接收方通道 QM_ORANGE.QM_APPLE,并且已在发送队列管理器 QM_ORANGE 上创建发送方通道 QM_ORANGE.QM_APPLE。此外,您还已经启动发送方通道,这也自动地启动了接收方通道。

使用 MQSC 创建消息通道

接收机器上打开命令提示符,然后按照以下步骤操作:

  1. 通过输入以下命令来启动 MQSC:

runmqsc

此时会显示一条消息,告诉您 MQSC 会话已启动。

  1. 通过输入以下命令来定义接收通道:

define channel (QM_ORANGE.QM_APPLE) chltype (RCVR) trptype (TCP)

此时会显示一条消息,告诉您何时创建了该通道。

  1. 通过输入以下命令来停止 MQSC:

end

将显示一些消息,然后会显示命令提示符。

发送机器上打开命令提示符,然后按照以下步骤操作:

  1. 通过输入以下命令来启动 MQSC:

runmqsc

此时会显示一条消息,告诉您 MQSC 会话已启动。

  1. 通过输入以下命令来定义发送方通道:

define channel (QM_ORANGE.QM_APPLE) chltype (sdr) conname ('con-name') xmitq (QM_APPLE) trptype (tcp)

值 con-name 是接收方队列管理器的 TCP 地址。

  1. 通过输入以下命令来启动通道:

start channel (QM_ORANGE.QM_APPLE)

  1. 通过输入以下命令来停止 MQSC:

end

将显示一些消息,然后会显示命令提示符。

您现在已经创建了将消息从发送队列管理器 QM_ORANGE 发送到接收队列管理器 QM_APPLE 上的队列 Q1 所需的全部 WebSphere MQ 对象。下一个任务是发送测试消息。

四、将测试消息放入队列

使用 MQ 资源管理器测试消息放入队列

点右键到远程队列上,选择“放入测试消息…”:

 

在弹出的界面中输入任何消息,点关闭或者是连续输入即可。

使用 MQSC 来将测试消息放入队列

在发送机器(主管队列管理器 QM_ORANGE 的机器)上执行此任务。

使用 amqsput 样本程序来将消息放入您创建的队列。

在 Windows® 上,缺省情况下样本程序随 WebSphere® MQ 服务器或客户机一起安装。在 Linux® 上,需要安装样本程序 RPM。

打开命令提示符,然后按照以下步骤操作:

  1. 启动 amqsput 样本程序,如下所示:
    • 在 Linux 上,切换到 /opt/mqm/samp/bin 目录,然后输入命令:./amqsput Q1
    • 在 Windows 上,输入命令:amqsput Q1

此时会显示以下消息:

样本 amqsput0 启动
目标队列为 Q1

  1. 在一行或多行上输入某些消息文本,然后按 Enter 键两次。 此时会显示以下消息:

样本 amqsput0 结束

您现在已经创建了测试消息并将其放入远程队列。下一个任务是验证是否已接收到测试消息。

五、验证是否已发送测试消息

使用 WebSphere MQ 资源管理器来验证是否已发送测试消息

在接收机器(主管队列管理器 QM_APPLE 的机器)上执行此任务。

接收队列管理器上:

  1. 在导航器视图中,展开队列管理器 QM_APPLE。
  2. 单击队列文件夹。
  3. 在内容视图中,右键单击队列 Q1,然后单击浏览消息...。 此时会打开消息浏览器,显示当前 Q1 上的消息列表。
  4. 双击列表中的最后一条消息以查看其属性对话框。

在属性对话框的数据页上,消息数据字段以人类可读的格式显示了消息的内容。

使用 MQSC 验证是否已发送测试消息

您在接收机器(主管队列管理器 QM_APPLE 的机器)上执行此任务。使用 amqsget 样本程序来从队列中取回消息。

打开命令提示符,然后按照以下步骤操作:

启动 amqsget 样本程序,如下所示:

  • 在 Linux® 上,切换到 /opt/mqm/samp/bin 目录,然后输入命令:./amqsget Q1
  • 在 Windows® 上,输入命令:amqsget Q1

此时会启动该样本程序,并显示您的消息以及此队列上的任何其他消息。在短暂停留后,样本程序结束,并再次显示命令提示符。

恭喜!您现在已经完成了本教程。

游嘻CMS是一款专为游戏资源分享领域打造的开源内容管理系统,开箱即用、一键同步、AI加持,让你零门槛拥有一个专业的游戏下载网站。零门槛部署• 3分钟安装:图形化安装向导,填写数据库信息和站点名称即可完成部署• 宝塔友好:专为宝塔面板优化,文档手把手教你从零搭建• 伪静态零配置:Apache用户上传即用,Nginx只需粘贴一段规则• 本地资源优先:CSS/JS/字体全部本地化,不依赖外部CDN,离线也能正常运行专业级SEO• 全站SEO可配:每个页面、分类、标签都支持自定义SEO标题、关键词、描述• 自动描述生成:未填写描述时自动从内容提取摘要• Canonical URL:避免重复内容被搜索引擎惩罚• noindex精准控制:可选择哪些页面不被搜索引擎索引• JSON-LD结构化数据:游戏详情和文章自动输出Schema.org结构化数据,提升搜索结果展示效果• 自动Sitemap:动态生成sitemap.xml,搜索引擎一键收录• 分页SEO优化:分页自动追加"第N页"到标题和描述,避免重复标题• CSS前缀伪原创:开启模板重写后,CSS class前缀自动替换,让每个站点HTML结构独一无二功能清单功能模块说明游戏管理自动同步、签名验证、下载加密、浏览统计礼包码系统通用码一键复制、专属码一人一码、领取频率限制文章管理自动同步、本地编辑、富文本编辑器、置顶发布分类标签自动同步、手动编辑、AI生成SEO信息数据同步全量/增量同步、进度显示、定时任务、同步日志AI伪原创多平台AI、批量处理、自定义提示词、站点名融入SEO管理页面SEO配置、自动描述、Canonical、noindex控制广告管理8个广告位、HTML内容、独立开关导航管理菜单排序、显示控制、新窗口设置友情链接名称/URL/Logo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值