背景信息
生产者将消息发送到交换器,由交换器将消息路由到一个或多个队列中(或者丢弃)。交换器根据Routing Key和Binding Key将消息路由到Queue。不同类型的交换器的路由规则不同。
操作步骤
新建交换器
1.登录管理控制台。
2.进入RabbitMQ管理控制台。
3.在实例列表页在操作列,目标实例行点击“管理”。
4.点击“交换器”后,点击“新建”按钮。
5.点击“新建”后出现以下窗口,选择虚拟主机,添加交换器名字,选择交换器类型和其他参数,然后点击“确定”即可新建交换器。
各参数说明如下
参数 | 描述 |
---|---|
虚拟主机 | 选择创建交换器所属的虚拟主机 |
名称 | 交换器名称。以amq.开头的为保留字段,因此不能使用。例如:。 |
类型 | Exchange类型。取值: |
x-delayed-type | 当Exchange类型为x-delayed-message时,需要配置此参数,以指定Exchange的路由类型。 |
是否持久化 | 交换器是否持久化到磁盘 |
是否自动删除 | 如果是,交换器将在至少一个队列或交换器绑定到该交换器,然后所有队列或交换器都已解除绑定时删除。 |
是否内置 | 如果是,客户端不能直接发布到这个交换器。它只能与其他交换器绑定使用。 |
其他参数 | Alternate exchange:备份交换器是为了实现没有路由到队列的消息,声明交换机的时候添加属性alternate-exchange,声明一个备用交换机,一般声明为fanout类型,这样交换机收到路由不到队列的消息就会发送到备用交换机绑定的队列中。 |
其中交换机类型如下表所示
交换机类型 | 说明 |
---|---|
Direct | 完全根据key进行投递的叫做Direct交换机。如果Routing key匹配, 那么Message就会被传递到相应的queue中。其实在queue创建时,它会自动的以queue的名字作为routing key来绑定那个exchange。例如,绑定时设置了Routing key为”abc”,那么客户端提交的消息,只有设置了key为”abc”的才会投递到队列。 |
Fanout | 不需要key的叫做Fanout交换机。它采取广播模式,一个消息进来时,投递到与该交换机绑定的所有队列。 |
Topic | 对key进行模式匹配后进行投递的叫做Topic交换机。比如符号”#”匹配一个或多个词,符号””匹配正好一个词。例如”abc.#”匹配”abc.def.ghi”,”abc.”只匹配”abc.def”。 |
查看交换器
(1)点击目标交换器名称,即可查看交换器概况。
(2)点击“绑定信息”,即可查看交换器的绑定信息。
(3)点击“被绑定信息”,即可查看交换器的被绑定信息。
删除交换器
(1)在目标交换器点击“删除”,即可删除交换器。