🧑💻作者名称:DaenCode
🎤作者简介:CSDN实力新星,后端开发两年经验,曾担任甲方技术代表,业余独自创办智源恩创网络科技工作室。会点点Java相关技术栈、帆软报表、低代码平台快速开发。技术尚浅,闭关学习中······
😎人生感悟:尝尽人生百味,方知世间冷暖。
📖所属专栏:图解RabbitMQ
专栏推荐
- 专门为Redis入门打造的专栏,包含Redis基础知识、基础命令、五大数据类型实战场景、key删除策略、内存淘汰机制、持久化机制、哨兵模式、主从复制、分布式锁等等内容。
链接>>>>>>>>>
《Redis从头学》 - SpringBoot实战相关专栏,包含SpringBoot过滤器、拦截器、AOP实现日志、整合Freemaker、整合Redis等等实战相关内容,多篇文章登入全站热榜、领域热榜、被技术社区收录。
链接>>>>>>
《SpringBoot实战》
🌟前言
因为后续要学到RabbitMQ的六种工作模型,其中使用到了交换机。不同的交换机类型,也对应着不同的工作模型。在这里先对交换机在RabbitMQ中的相关知识进行学习,方便后续更好的理解发布订阅模型、路由模型以及主题模型。
🌟概述
以下解释来源于百度百科:
交换机(Switch)意为“开关”是一种
用于电(光)信号转发的网络设备
。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。
个人理解:
上述的解释是从网络的角度进行解释,其实核心功能就是
转发
两字。其在RabbitMQ中的应用简单来说就是用于消息的转发。
🌟RabbitMQ中的应用
在RabbitMQ中的应用主要负责生产者发送的消息,将消息通过路由Key发送到队列中,或者说是转发到队列中。
注意队列和交换机是多对多的关系。文章来源:https://www.toymoban.com/news/detail-726675.html
🌟交换机类型
- Direct(直连交换机):
- 模型:根据消息的
routing_key
进行匹配,将消息传递给与之绑定的队列。 - 应用场景:适合一对一的消息传递,例如日志处理、任务分发等。
- 绑定规则:使用完全匹配的绑定键。
- 模型:根据消息的
- Fanout(扇形交换机):
- 模型:无视消息的
routing_key
,将消息广播给所有与之绑定的队列。 - 应用场景:适合发布/订阅模式,消息需要广播给多个消费者,例如实时广播、通知等。
- 绑定规则:无需绑定键。
- 模型:无视消息的
- Topic(主题交换机):
- 模型:根据消息的
routing_key
与交换机绑定时的binding_key
进行匹配,将消息传递给符合匹配规则的队列。 - 应用场景:适合按照消息的一部分内容进行路由分发,例如新闻分类、消息过滤等。
- 绑定规则:使用通配符进行模糊匹配,
*
匹配一个单词,#
匹配零个或多个单词。
- 模型:根据消息的
- Headers(头交换机):
- 模型:根据消息的 header 属性进行匹配,将消息传递给符合匹配规则的队列。
- 应用场景:适合非常复杂的路由规则场景,一般很少用到。
- 绑定规则:通过设置一组键值对的规则进行匹配。
🌟写在最后
有关于说说交换机在RabbitMQ中的四种类型以及使用场景到此就结束了。感谢大家的阅读,希望大家在评论区对此部分内容散发讨论,便于学到更多的知识。
文章来源地址https://www.toymoban.com/news/detail-726675.html
到了这里,关于【图解RabbitMQ-6】说说交换机在RabbitMQ中的四种类型以及使用场景的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!