From 34e62c874044b7c2b649673983bf2622ebe8fe04 Mon Sep 17 00:00:00 2001 From: heibaiying <31504331+heibaiying@users.noreply.github.com> Date: Mon, 16 Dec 2019 21:03:17 +0800 Subject: [PATCH] =?UTF-8?q?Update=20RabbitMQ=5F=E5=9F=BA=E7=A1=80.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- notes/RabbitMQ_基础.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/notes/RabbitMQ_基础.md b/notes/RabbitMQ_基础.md index 03219f4..dc0347a 100644 --- a/notes/RabbitMQ_基础.md +++ b/notes/RabbitMQ_基础.md @@ -110,14 +110,17 @@ RabbitMQ 支持多种交换器类型,常用的有以下四种: 这是最简单的一种交换器模型,此时会把消息路由到与该交换器绑定的所有队列中。如下图,任何发送到 X 交换器上的消息,都会被路由到 Q1 和 Q2 两个队列上。
+ ### 5.2 direct 把消息路由到 BindingKey 和 RountingKey 完全一样的队列中。如下图,当消息的 RountingKey 为 orange 时,消息会被路由到 Q1 队列;当消息的 RountingKey 为 black 或 green 时,消息会被路由到 Q2 队列。
+ 需要特别说明的是一个交换器绑定多个队列时,它们的 BindingKey 是可以相同的,如下图。此时当消息的 RountingKey 为 black 时,消息会同时被路由到 Q1 和 Q2 队列。
+ ### 5.3 topic 将消息路由到 BindingKey 和 RountingKey 相匹配的队列中,匹配规则如下: @@ -128,6 +131,7 @@ RabbitMQ 支持多种交换器类型,常用的有以下四种: 以下是官方文档中的示例,交换器与队列的绑定情况如图所示,此时的路由情况如下:
+ + 路由键为 `lazy.orange.elephant` 的消息会发送给所有队列; + 路由键为 `quick.orange.fox` 的消息只会发送给 Q1 队列; + 路由键为 `lazy.brown.fox` 的消息只会发送给 Q2 队列;