2.rabbitmq-交换机详解

在rabbitmq的消息模型中,消息的生产都是面向交换机的,并会指定一个路由键。由交换机根据路由键去匹配绑定在此交换机的队列上。匹配的规则则是根据交换机的类型来决定如何匹配队列绑定交换机时的绑定键。匹配成功,则交换机会把消息发送到相应队列上。

接下来我们介绍下这几种主要的交换机类型。

1. direct 直连交换机
2. fanout 广播交换机
3. topic  主题
4. header 这个不咋用,这里暂时就不介绍了,啊哈哈

1. Direct

路由键完全匹配,消息被投递到对应的队列,键:channel->basic_public($msg,’’,’queue-name’)
direct 交换器是默认交换器。声明一个队列时,会自动绑定到默认交换器,并且以队列名称作为路由


image.png

2. Fanout

消息广播到绑定的队列,不管队列绑定了什么路由键,消息经过交换器,每个队列都有一份

image.png

3. Topic

通过使用“ * ”和“#”通配符进行处理,使来自不同源头的消息到达同一个队列,”.”将路由键分为了几个标识符,
“ * ”匹配 1 个,“#”匹配一个或多个
或多个

路由键 :像交换机发布消息时指定的一个字符串

绑定键 :队列绑定交换机时的一个字符串

绑定键 路由键 是否可以匹配
apple.# apple.orange yes
apple.# apple.orange.banana yes
apple.* apple.orange yes
apple.* apple.orange.banana no

下一篇 rabbitmq-队列详解

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容