更新时间:2024-10-25 GMT+08:00

绑定RabbitMQ Queue

绑定Queue是将Exchange和Queue关联起来,在生产者发送消息到Exchange后,Exchange根据路由规则将消息发送到与其关联的Queue中。

本章节指导如何在控制台为Exchange绑定Queue,只有绑定Queue后,Exchange才能把消息路由并存放到Queue。一个Exchange可以绑定多个Queue。

约束与限制

  • RabbitMQ 3.x.x版本中,名为“(AMQP default)”的Exchange不能绑定任何Queue。
  • “Internal”为“是”的Exchange只能绑定Exchange,不能绑定Queue。

前提条件

为Exchange绑定Queue

  1. 登录管理控制台。
  2. 在管理控制台左上角单击,选择区域。

    此处请选择RabbitMQ实例所在的区域。

  3. 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务RabbitMQ版”,进入分布式消息服务RabbitMQ专享版页面。
  4. 单击实例名称,进入实例详情页面。
  5. 在左侧导航栏选择“Vhost列表”,进入Vhost列表页面。
  6. 单击Vhost名称,进入Vhost详情页。
  7. 在“Exchange”页签中,在待绑定的Exchange后,单击“绑定”,弹出“绑定”页面。
  8. 单击“添加绑定”,弹出“添加绑定”对话框。
  9. 参考表1,设置绑定参数。

    表1 绑定参数说明

    参数

    说明

    类型

    仅RabbitMQ 3.x.x版本包含此参数。RabbitMQ AMQP-0-9-1版本只支持绑定Queue。

    选择Exchange绑定的类型。绑定Queue时选择“Queue”。

    绑定目标

    在下拉框中选择需要绑定的目标Queue。

    Routing Key

    设置Key值字符串,用于告知Exchange应该将消息投递到哪些Queue中。

    • Direct Exchange和Topic Exchange需要设置Routing Key,Exchange会将消息路由到Routing Key匹配成功的Queue中。如果不设置Routing Key,Exchange会将消息路由到所有与它绑定的Queue中。
    • x-consistent-hash Exchange需要设置Routing Key,Routing Key表示Queue的权重。数值越大,Queue的权重越大,分发消息时接收到的消息越多。
    • Fanout Exchange和Header Exchange无需设置Routing Key,Routing Key对于这两种Exchange不起作用。

  10. 单击“确定”,完成Queue的绑定。

    在“绑定”页面,查看新绑定的Queue。