4.交换机 Exchange 分类
4.0.创建队列Queue
在 操作界面

分别 添加 fivemall.goods fivemall.order fivemall.admin yuan.admin 四个队列

4.1.Direct Exchange(直接交换机)
该类型的交换器将所有发送到该交换器的消息被转发到RoutingKey指定的队列中,也就是说路由到BindingKey和RoutingKey完全匹配的队列中。

4.1.1.创建直接交换机Direct Exchange
在 操作界面 新添加 直接交换机, 起名叫 exchange.direct

4.1.2.绑定队列 binding
点击 交换机的 名字, 打开操作界面
 
绑定队列并设置路由键 , 这里设置成与队列同名, 与4个队列同时绑定

4.1.3.发送消息

4.1.4.查看接收
在 队列中查看只有一个队列接收到消息

点击 队列名, 打开操作界面

4.1.5.清除消息
先 选择 确认模式(Ack Mode) 为 拒绝重新排队 (Reject requeue false)
也就是 消息被读取后, 不会再回到队列
再 点击 读取消息 ( Get Message(s) )
这样 消息 被 读取后 就 消除了

4.2.Fanout Excange(扇出交换机 / 广播)
将消息发送至所有的队列, 相当于广播

4.2.1.创建扇出交换机Fanout Excange
创建 Type类型 为 fanout 的交换机 , 命名为 exchange.fanout

4.2.2.绑定队列 binding
点击绑定 fivemall.goods fivemall.order yuan.admin 三个队列, 并分别设置与队列同名的路由键

4.2.3.发送消息
发送消息时, 设置 路由键 为 fivemall.goods

4.2.4.查看接收
查看队列信息时, 可以发现 绑定 的 fivemall.goods fivemall.order yuan.admin 三个队列 都 接收到信息

4.3.Topic Exchange(主题交换机)
设置路由键时可以使用通配符, # 代表任意个单词 (包括 0 个, 1 个 或者 多个), * 代表 最少一个单词 ( 包括 1 个 , 多个)

4.3.0.增加一个队列
增加一个新的队列就叫 fivemall

4.3.1.创建主题交换机Topic Excange
创建 Type类型 为 topic 的交换机 , 命名为 exchange.topic

4.3.2.绑定队列 binding
使用 fivemall.# 为路由键绑定 fivemall fivemall.order fivemall.goods
使用 *.admin 为路由键绑定 fivemall.admin yuan.admin

4.3.3.发送接收
4.3.3.1.以 fivemall.goods 为路由键 发送

接收信息的队列为 fivemall fivemall.order fivemall.goods 三个队列 , 因为它们的绑定键为 fivemall.#

分别清除每个队列得到的消息
4.3.3.2.以 abc.admin 为路由键 发送

接收信息的队列为 fivemall.admin yuan.admin 两个队列 , 因为它们的绑定键为 *.admin
 
分别清除每个队列得到的消息
4.3.3.3.以 fivemall.admin 为路由键 发送

五个队列都能收到信息

4.4.Header Exchange
Headers交换器允许你匹配AMQP消息的Header而非路由键,除此之外Headers交换器和Direct交换器完全一致,但性能却很差,几乎用不到,忽略。



















