4.10. 配置分片队列


在队列间处理消息的常用模式,其中只有部分顺序是使用 队列分片。这意味着您可以定义一个作为单一逻辑队列的 anycast 地址,但它由多个底层物理队列支持。

流程

  1. 打开 & lt;broker_instance_dir> /etc/broker.xml 配置文件。
  2. 添加一个 address 元素并设置 name 属性。例如:

    <configuration ...>
      <core ...>
        ...
        <addresses>
           <address name="my.sharded.address"></address>
        </addresses>
      </core>
    </configuration>
  3. 添加 anycast 路由类型,并包含所需的分片队列数量。在以下示例中,队列 q1, q2, 和 q3 添加为 anycast 的目的地。

    <configuration ...>
      <core ...>
        ...
        <addresses>
           <address name="my.sharded.address">
              <anycast>
                 <queue name="q1" />
                 <queue name="q2" />
                 <queue name="q3" />
              </anycast>
           </address>
        </addresses>
    </core>
    </configuration>

根据上述配置,发送到 my.sharded.address 的消息会在 q1, q2q3 之间均匀分布。在使用完全限定域名(FQQN)时,客户端可以直接连接到特定的物理队列,并接收仅发送到该特定队列的消息。

要将特定消息绑定到特定的队列,客户端可以为每个消息指定一个消息组。代理将消息分组到同一队列,一个消费者全部处理它们。

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.