设置多点广播代理

您可以使用 Message Brokers Toolkit配置管理器 Java API 设置多点广播代理。本主题描述如何使用 Message Brokers Toolkit。 有关如何使用配置管理器代理(CMP)的信息,请参阅使用 CMP 开发应用程序Class com.ibm.broker.config.proxy.BrokerProxy.MulticastParameterSet

要建立能够处理多点广播请求的代理:

  1. 切换到“代理管理”透视图
  2. 在“域”视图中,展开相应的代理域。
  3. 双击拓扑项,打开代理拓扑编辑器。
  4. 在代理拓扑编辑器中,右键单击要修改的代理,并选择属性
  5. 在属性窗口的左窗格中选择多点广播
  6. 选中启用多点广播复选框。
  7. 可选:修改下面列出的属性,任何未修改的属性将采用缺省值。
    协议类型
    多点广播协议类型。

    有效值为 PTL、PGM/IP 和“UDP 封装的 PGM”。缺省值为 PTL。

    请参阅多点广播协议类型以获取这些多点广播协议类型的说明。

    最小地址
    代理可用于其多点广播传输的最小 IP 地址。

    该地址的范围必须在 224.0.0.0 到 239.255.255.255 之间。缺省值为 239.255.0.0.

    最大地址
    代理可用于其多点广播传输的最大 IP 地址。

    该地址的范围必须在 224.0.0.0 到 239.255.255.255 之间,并且必须不小于最小地址的值。缺省值为 239.255.255.255。

    数据端口
    UDP 数据端口,通过它发送和接收多点广播信息包。

    缺省值是 34343。

    代理包大小
    多点广播信息包的大小(以字节为单位)。

    它可以在 500 到 32000 之间。缺省值为 7000。

    代理脉动信号超时
    代理定期(约每秒发送一次)将控制包发送到每个客户机。该控制包用于发送各类控制信息,并保持脉动信号。会让客户机知道脉动信号超时值,以帮助客户机检测传输设备故障或网络故障。如果控制包没有在前一个控制包到达后的几秒钟(定义为该属性指定值的两倍)内到达,则客户机可以怀疑出现传输设备故障或网络故障。

    缺省值是 20。

    代理多点广播 TTL
    多点广播信息包可以在客户机和代理之间进行的最大跳跃次数。该值比客户机和代理之间可以存在的路由器最大数值多一。

    缺省值为 1,这表示多点广播信息包必须保留在发起方本地,并且不通过任何路由器传递。最大值是 255。

    不要使用 0 值。在某些操作系统中,这可能会导致阻止消息的接收,而在其他操作系统中(例如:Windows 2000、Windows XP 和 Linux),0 值不会导致阻止消息的接受。

    代理网络接口
    发送多点广播信息包的网络接口的名称。仅当代理在带多个网络接口的主机上运行时,才与此属性有关。

    这可以是主机名或 IP 地址。缺省值是“None”。如果选择缺省值,则使用的网络接口从属于操作系统。

    重叠多点广播主题行为
    选择接受、拒绝或还原。

    当客户机为主题层次结构中的主题请求多点广播预订时,重叠多点广播主题行为属性控制代理行为,该主题层次结构包含明确禁用多点广播的主题。

    例如,在某个主题层次结构中,如果多点广播是带有两个子代的主题,并且为多点广播启用了 foo,禁用了 bar

    三个可能的设置是:
    接受
    接收匹配的多点广播预订,并且除了特别排除的发布内容外,与主题匹配的所有发布内容都是多点广播。在上述示例中,对 multicast/# 的多点广播预订接收多点广播的 foo 上发布的消息,但不接收任何在 bar 上发布的消息。
    拒绝
    由于主题有禁用多点广播的子代,代理拒绝对该主题的多点广播预订。对 multicast/# 的预订被拒绝。
    还原
    如果预订了已禁用多点广播的主题,或是具有禁用多点广播的子代的主题,则会导致单点广播传输。对 multicast/# 的多点广播预订接收在 foobar 上发布的消息,但是这些消息是进行单点广播而不是多点广播发送。

    缺省值是接受

    最长密钥时效
    主题加密密钥在必须重新定义之前的最长时效(以分钟为单位)。

    缺省值为 360。

  8. 可选:单击多点广播旁的 +,然后单击高级 现在您可以修改以下附加属性:
    代理传输速率限制激活
    使用与代理传输速率限制值关联的代理传输速率限制激活属性来控制网络阻塞。从下拉菜单中选择以下某个值:
    禁用
    尽快传输多点广播数据。如果提交消息进行多点广播的速率超出机器或网络限制(即,以太网或主机 CPU 的速度成为瓶颈),则这些限制定义最大传输速率,并且直到先前提交的所有消息都已发送之后,才会继续进行消息提交。
    静态
    传输速率由代理传输速率限制值中指定的值进行限制。
    动态
    根据网络阻塞情况和客户机报告的数据损失,运行期间对传输速率的限制可能会有所不同。但是该速率不会超过代理传输速率限制值

    缺省值是禁用。如果选择静态,您还可以选择属性代理传输速率限制值的值。

    代理传输速率限制值
    这限制了多点广播信息包的总体传输速率(以千位/秒为单位)。仅在代理传输速率限制激活属性为静态时,该参数有效。该属性不能超越机器或网络的能力。

    该值可在 10 到 1,000,000 的范围内。

    客户机 NACK 后退时间
    客户机在发送自己的 NACK 之前,侦听其他客户机的 NACK 的最长时间(以毫秒为单位)。

    该值可以在 0 到 1000 之间。缺省值是 100。

    客户机 NACK 检查周期
    对 NACK 构建进行接收状态和序列间隙检测进行定期检查的间隔时间(以毫秒为单位)。

    该值可在 10 到 1000 的范围内。缺省值是 300。

    客户机信息包缓冲区数目
    开始接收信息包时创建的内存缓冲区数量。 如果具有大量的缓冲区,则可提高接收性能并可在高传送率下将数据包的丢失降至最低,但需要使用更多的内存。每个缓冲区为 33 KB,500 个缓冲区(缺省值)将使用约 15 MB 的主存储器。

    如果内存的使用非常重要,则尝试对该属性使用不同的值,并在传输速率很高的情况下查看对应用程序整体性能的影响。

    该值可在 1 到 5000 的范围内。缺省值为 500。

    客户机套接字缓冲区大小
    客户机的套接字接收器缓冲区的大小(以千字节为单位)。 增加该值将减少可能由客户机接收器丢弃的数据包数量。

    该值可以在 65 到 10000 之间。缺省值为 3000。

    代理历史记录清除时间
    为清除重新传输缓冲区定义的时间(以秒为单位)。

    该值可在 1 到 20 的范围内。缺省值是 7。

    注: 该属性在 V6 中不可用。
    代理最小历史记录大小
    作为所有传输信息包的归档分配的缓冲区大小最小值(以千字节为单位)。 该缓冲区由所有可靠主题共享,并可用于恢复丢失的信息包。

    该值可以在 1000 到 1,000,000 之间。缺省值为 60,000。

    代理 NACK 累加时间
    在恢复的信息包被发送之前,NACK 在代理内聚集的时间(以毫秒为单位)。

    该值可以在 50 到 1000 之间。缺省值为 500。

    最大客户机内存大小
    客户机中的接收缓冲区可使用的内存最大值(以千字节为单位)。

    该属性仅可应用于 PGM 多点广播协议。缺省值为 262,144,即 256MB。

    重要: 通过增加属性的值(如代理最小历史记录大小)来增加 Java 虚拟机(JVM)需要的内存量。进行此更改后,首次尝试预订代理时,可能会导致“JVM 内存不足”错误。如果发生该错误,则需增加 JVM 堆大小或减小您刚才增大的属性值(如代理最小历史记录大小)。
  9. 单击“确定”。
  10. 重新启动代理;只有这样,刚才所进行的更改才会生效。

在可以使用多点广播前,必须定义一些可以进行多点广播的主题。

建议使用工作台来更改代理的多点广播配置。然而,您也可以使用 mqsichangeproperties 命令来更改代理的属性。

下表将上述属性与 mqsichangeproperties 命令上支持多点广播的相应参数的名称相关联。请参阅mqsichangeproperties 命令以获取有关 mqsichangeproperties 命令的完整详细信息。
属性名 mqsichangeproperties 参数
启用多点广播 multicastEnabled
协议类型 multicastProtocolType
最小地址 multicastAddressRangeMin
最大地址 multicastAddressRangeMax
数据端口 multicastDataPort
代理包大小 multicastPacketSizeBytes
代理脉动信号超时 multicastHeartbeatTimeoutSec
代理多点广播 TTL multicastMCastSocketTTL
代理网络接口 multicastMulticastInterface
重叠多点广播主题行为 multicastOverlappingTopicBehavior
最长密钥时效 multicastMaxKeyAge
代理传输速率限制激活 multicastLimitTransRate
代理传输速率限制值 multicastTransRateLimitKbps
客户机 NACK 后退时间 multicastBackoffTimeMillis
客户机 NACK 检查周期 multicastNackCheckPeriodMillis
客户机信息包缓冲区数目 multicastPacketBuffers
客户机套接字缓冲区大小 multicastSocketBufferSizeKbytes
代理历史记录清除时间(不推荐在 V6 中使用) 不适用
代理最小历史记录大小 multicastMinimalHistoryKBytes
代理 NACK 累加时间 multicastNackAccumulationTimeMillis
最大客户机内存大小 multicastMaxMemoryAllowedKBytes
要为代理 WBRK_BROKER 启用多点广播,使用下列命令:
   mqsichangeproperties WBRK_BROKER -o DynamicSubscriptionEngine -n multicastEnabled -v true
这会启用代理使用多点广播,但不更改代理的任何其他属性。
要启用 WBRK_BROKER 代理的多点广播,并将传输速率限制为 50000 千位/秒,则使用以下命令:
      mqsichangeproperties WBRK_BROKER -o DynamicSubscriptionEngine -n multicastEnabled,multicastLimitTransRate,multicastTransRateLimitKbps -v true,Static,50000
未更改代理的任何其他属性。

注:使用逗号分隔正在被更改的属性以及属性的值。

为了使更改生效,必须重新启动代理。

警告:每次部署代理配置时,使用 mqsichangeproperties 命令对代理配置进行的任何更改将被配置管理器中保存的配置所覆盖。

相关概念
多点广播发布/预订
多点广播协议类型
相关任务
修改代理属性
使主题进行多点广播传输
相关参考
“代理管理”透视图
mqsichangeproperties 命令
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
aq13150_