16.4.2. 配置消息重新分发


以下操作过程演示了如何配置消息重新分发。

步骤

  1. 打开 <broker-instance-dir>/etc/broker.xml 配置文件。
  2. <cluster-connection> 元素中,验证 <message-load-balancing> 是否已设置为 <ON_DEMAND>

    <configuration>
        <core>
            ...
            <cluster-connections>
                <cluster-connection name="my-cluster">
                    ...
                    <message-load-balancing>ON_DEMAND</message-load-balancing>
                    ...
                </cluster-connection>
            </cluster-connections>
        </core>
    </configuration>
  3. <address-settings> 元素中,为队列或一组队列设置重新分配延迟。

    在本例中,在上次消费者关闭后,负载均衡到 my.queue 的消息将重新分发 5000 毫秒。

    <configuration>
        <core>
            ...
            <address-settings>
                <address-setting match="my.queue">
                    <redistribution-delay>5000</redistribution-delay>
                </address-setting>
            </address-settings>
            ...
        </core>
    </configuration>
    address-setting
    match 属性设置为您要重新分发消息的队列的名称。您可以使用代理通配符语法来指定一系列队列。如需更多信息,请参阅 第 4.2 节 “将地址设置应用到一组地址”
    redistribution-delay
    此队列最终消费者在向集群中的其他代理重新分发消息前应等待的时间(以毫秒为单位),代理应等待的时间(以毫秒为单位)。如果您将其设置为 0, 则会立即重新分发消息。但是,您通常应在重新分发前设置延迟 - 消费者关闭,但在同一队列中快速创建另一个事件。
  4. 对集群中的每个额外代理重复此步骤。

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.