WebSphere MQ Publish/Subscribe主要将流用作对主题名称空间进行分区的方法。几组相关主题可分组到不同的流中,这样可以将不同的安全控件应用于不同的流中,同时更好地均衡代理的发布工作负载。

然而, WebSphere Message Broker 提供了更灵活的控件来达到这两个目的。因此,仅针对 MQRFH 应用程序兼容性支持流的概念。

WebSphere Message Broker 的安全控件让权限可应用于单个主题级别。同样,通过创建为相同或不同输入队列提供服务的发布消息流的更多实例,可以更方便地控制代理的发布工作负载。

WebSphere Message Broker 还允许 MQRFH 客户机应用程序在它们的预订内容和发布内容中指定 MQPSStreamName 命令参数。但是,为了保持 WebSphere MQ Publish/Subscribe的分区特性,流名称仅用于修改主题。

当与消息相关联的流名称不是设置为 SYSTEM.BROKER.DEFAULT.STREAM 时,则将该消息作为以“$SYS/STREAM/<streamname>/”字符串为前缀的消息中提到的主题进行处理。即,对于指定流名称为 StreamX 的 Topic1 的预订,将其作为主题为“$SYS/STREAM/StreamX/Topic1”的预订进行处理。

即使 MQRFH2 发布和预订应用程序本身不允许在发送至 WebSphere Message Broker 代理的消息中指定流名称,但这些应用程序仍可将与流相关的主题作为目标。 要做到这一点,它们必须将适当的流前缀作为主题的前缀。

例如,要预订 WebSphere MQ Publish/Subscribe 网络内 STOCK.STREAM 流上发布的主题“IBM/Latest”,MQRFH2 订户必须指定主题“$SYS/STREAM/STOCK.STREAM/IBM/Latest”。

WebSphere MQ Publish/Subscribe 只允许将与流相关的发布内容发送到与该流同名的队列中。但是,WebSphere Message Broker 允许发布客户机将它们的发布内容发送到消息流中的任何输入队列。

明确指定发布内容中流名称参数的 MQRFH 应用程序可将发布内容发送到任何由 WebSphere Message Broker 服务的发布队列。队列不需要与流同名。

要知道发布内容的接收顺序可能与您希望的有所不同。

每个 Publication 节点都有隐式流命名属性,该属性的缺省值为 true。当 MQRFH 发布内容不包含显式流名称时,此缺省选项会产生与 WebSphere MQ Publish/Subscribe中相同的行为。如果该属性为 false,并且发布内容不包含显式流名称,则采用 SYSTEM.BROKER.DEFAULT.STREAM。

下表概述了可用于 MQRFH 和 MQRFH2 客户机应用程序的选项,这两个客户机应用程序会将消息发布到缺省流或特定的 WebSphere MQ Publish/Subscribe流。流名称 StreamX 用于说明选项。

  MQRFH 发布程序   MQRFH2 发布程序  
  缺省流 StreamX 缺省流 StreamX
MQRFH 订户 S1,P1 S2,P2 S1,P3 S2,P4
MQRFH2 订户 S3,P1 S4,P2 S3,P3 S4,P4
         
         
         
订户注释:
  • S1 订户不使用流名称进行预订或使用“SYSTEM.BROKER.DEFAULT.STREAM”流名称进行预订。
  • S2 订户使用“StreamX”流名称进行预订。
  • S3 订户预订未添加“$SYS/STREAM/<streamname>/”的主题。
  • S4 订户预订带有“$SYS/STREAM/StreamX/”前缀的主题。
发布程序注释:
  • P1 发布程序在指定“SYSTEM.BROKER.DEFAULT.STREAM”流名称的任何队列上发布。或者不指定流名称就在任何隐式流命名属性设置为 false 的队列上发布。
  • P2 发布程序在指定“StreamX”流名称的任何队列上发布,或不指定流名称就在隐式流命名属性设置为 true 的“StreamX”队列上发布。
  • P3 发布程序未将“$SYS/STREAM/<Stream>/”前缀添加至主题就在任何队列上发布。
  • P4 发布程序在任何队列上发布,并将“$SYS/STREAM/StreamX/”前缀添加至主题。
注: 当“$SYS/STREAM/<streamname>/”前缀传递到 MQRFH 订户时,会从 MQRFH2 发布内容的所有主题中除去它。
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
aq19790_