Producer将消息发送到Exchange,由Exchange将消息路由到一个或多个Queue中(或者丢弃)。本文介绍如何在消息队列RabbitMQ版控制台创建Exchange。

前提条件

操作步骤

  1. 登录消息队列RabbitMQ版控制台
  2. 概览页面的资源分布区域,选择地域。
  3. 实例列表页面,单击目标实例名称。
  4. 在左侧导航栏,单击Exchange 列表
  5. Exchange 列表页面,在当前 Vhost右侧的切换下拉列表中,选择Vhost,然后单击创建 Exchange
  6. 创建 Exchange面板,输入Exchange名称,选择Exchange类型,设置是否为Internal类型,然后单击确定
    参数 描述
    Exchange 名称 Exchange名称。以amq.开头的为保留字段,因此不能使用。例如:amq.test。
    类型 Exchange类型。取值:
    • direct:该类型路由规则会将消息路由到Binding Key与Routing Key完全匹配的Queue中。
    • topic:该类型与direct类型相似。Topic Exchange路由规则没有Direct Exchange那么严格, 支持模糊匹配和多条件匹配,即该类型Exchange使用Routing Key模式匹配和字符串比较的方式将消息路由至绑定的Queue中。
    • fanout:该类型路由规则非常简单,会把所有发送到该Exchange的消息路由到所有与它绑定的Queue中,相当于广播功能。
    • headers:该类型与direct类型相似。Headers Exchange使用Headers属性代替Routing Key进行路由匹配,在绑定Headers Exchange和Queue时,设置绑定属性的键值对;在向Headers Exchange发送消息时,设置消息的Headers属性键值对,使用消息Headers属性键值对和绑定属性键值对比较的方式将消息路由至绑定的Queue。
    • x-jms-topic:适用于通过消息队列RabbitMQ版提供的JMS接口接入消息队列RabbitMQ版的JMS应用,该类型路由规则会将消息路由到Binding Key与Routing Key通配符匹配的Queue中。更多信息,请参见JMS概述
    • x-delayed-message:通过声明该类Exchange,您可以自定义消息的Header属性x-delay来指定消息延时投递的时间段,单位为毫秒。消息将在x-delay中定义的时间段后,根据路由规则被投递到对应的Queue。路由规则取决于x-delayed-type中指定的Exchange路由类型。
    x-delayed-type 当Exchange类型为x-delayed-message时,需要配置此参数,以指定Exchange的路由类型。
    Internal 是否为Internal类型,默认值为。取值:
    • :内建类型,用于Exchange和Exchange之间的绑定。
    • :非内建类型,用于Exchange和Queue之间的绑定。

执行结果

Exchange 列表页面显示创建的Exchange。