RabbitMQ从入门到精通----交换器详解
来源:互联网 发布:mac电脑卸载软件 编辑:程序博客网 时间:2024/04/29 06:23
RabbitMQ交换器详解
正如我们所理解的,当我们发送消息到RabbitMQ中,它的流程为:
- 发送到交换器
- 交互器根据Routing key(路由键)发送至相关队列
在RabbitMQ中一共提供四种交换器(Exchange):
- direct
- fanout
- topic
- headers
direct详解
direct交换器相对来说比较简单,匹配规则为:如果路由键匹配,消息就被投送到相关的队列。
在服务器中必须实现direct类型的服务器,包含一个空白字符串名称的默认交换器。当我们声明一个队列时,它会自动绑定到该交换器上,并以队列的名称作为路由键。
当然如果我们发送的消息并没有相关的路由键匹配,那么消息会被丢弃。
fanout详解
fanout交换器中没有路由键的概念,他会把消息发送到所有绑定在此交换器上面的队列中。
在这种模式下,允许我们对一个消息做多种操作。在这种模式下,需要先将队列与交换器进行绑定,当然如果交换器上面没有相关的队列,消息会被丢弃。
topic详解
topic交换器你采用模糊匹配路由键的原则进行转发消息到队列中,
例如在上图中,我们发送以log.critical与alert.critical为路由键的消息,在与交换器上绑定的队列中路由键分别为
- log.*
- *.critical
- alert.*
在模糊匹配中*代表一个关键字匹配,#代表多个关键字进行匹配。
因此log.critical发送到log.*与*.critical中
因此alert.critical发送到alert.*与*.critical中
同样如果在交换器上没有匹配的交换队列,那么消息会被丢弃。
header详解
在项目中一般使用不到,使用到的时候,再补充,嘻嘻
0 0
- RabbitMQ从入门到精通----交换器详解
- RabbitMQ从入门到精通
- RabbitMQ从入门到精通
- RabbitMQ从入门到精通
- RabbitMQ从入门到精通
- RabbitMQ从入门到精通
- RabbitMQ从入门到精通----环境安装
- RabbitMQ从入门到精通----基本概念
- RabbitMQ从入门到精通----集群模式
- RabbitMQ从入门到精通----运行与管理
- RabbitMQ从入门到精通----编码与模式
- Makefile语法详解 - 从入门到精通
- 从入门到精通
- android studio从入门到提高到精通详解。。。
- VC++从入门到精通开发详解视频教程
- ASP.NET WEB窗体从入门到精通详解
- Makefile详解——从入门到精通
- Makefile详解——从入门到精通
- OpenCV仪表数据识别(四):图像倾斜矫正
- Spring学习笔记之配置bean
- 【codeforce237C】Primes on Interval
- java文件下载中文文件名处理,适应各种浏览器
- 欢迎使用CSDN-markdown编辑器
- RabbitMQ从入门到精通----交换器详解
- 53. Maximum Subarray
- 统一修改填报属性“模式”,而不修改其它属性
- 基于随机游走的社团划分算法label progation 的python实现
- 请不要滥用SharedPreference
- hashMap、hashTable
- Android动画之RotateAnimation
- ES2015数组扩展 - Array.from()
- Scala:AnyRef和AnyVal