RabbitMQ:消息模型
RabbitMQ 提供了 6 种消息模型,分别为:单生产单消费模型(Hello World)、消息分发模型(Work queues)、Fanout 消息订阅模式(Publish/Subscribe)、Direct 路由模式(Routing)、Topic 匹配模式(Topic)、RPC 模式(RPC)。
~
本篇内容包括:RabbitMQ 6 种消息模型、RabbitMQ 6 种消息模型介绍
文章目录
- 一、RabbitMQ 6 种消息模型
- 二、RabbitMQ 6 种消息模型介绍
- 1、单生产单消费模型(Hello World)
- 2、消息分发模型(Work queues)
- 3、Fanout 订阅模型-消息订阅模式(Publish/Subscribe)
- 4、Direct 订阅模型-路由模式(Routing)
- 5、Topic 订阅模型-匹配模式(Topic)
- 6、RPC 远程过程调用(RPC)
一、RabbitMQ 6 种消息模型
RabbitMQ 提供了 6 种消息模型,分别为:单生产单消费模型(Hello World)、消息分发模型(Work queues)、Fanout 消息订阅模式(Publish/Subscribe)、Direct 路由模式(Routing)、Topic 匹配模式(Topic)、RPC 远程过程调用(RPC)。
如下图所示,其中 1、2 模型(单生产单消费模型与消息分发模型)都是较为简单的消费模型;3、4、5 模型三种都属于订阅模型,只不过进行路由的方式不同,第 6 种属于是 RPC,并不是 MQ。
二、RabbitMQ 6 种消息模型介绍
1、单生产单消费模型(Hello World)
单生产单消费模型,即基本消息模型或简单消费模型,即完成基本的一对一消息转发。
2、消息分发模型(Work queues)
在消息分发模型,多个收听者监听一个队列。
3、Fanout 订阅模型-消息订阅模式(Publish/Subscribe)
订阅模型-消息订阅模式,生产者将消息发送到 Exchange,Exchange 再转发到与之绑定的 Queue中,每个消费者再到自己的 Queue 中取消息。
4、Direct 订阅模型-路由模式(Routing)
订阅模型-路由模式,此时生产者发送消息时需要指定 RoutingKey,即路由 Key,Exchange 接收到消息时转发到与 RoutingKey 相匹配的队列中。
5、Topic 订阅模型-匹配模式(Topic)
订阅模型-匹配模式,相比于前两种订阅模型,是更细致的分组,允许 在RoutingKey 中使用匹配符
*
:匹配一个单词#
:匹配0个或多个单词
6、RPC 远程过程调用(RPC)
RPC 远程过程调用,是客户端与服务器之间是完全解耦的,即两端既是消息的发送者也是接受者。
RabbitMQ:消息模型相关推荐
- RabbitMQ消息模型详解
目录 一.消息队列 什么是消息队列 AMQP和JMS 常见MQ产品 二.RabbitMQ 三.五种消息模型 四.简单消息模型 代码演示 获取连接 生产者 消费者 手动ACK 五.工作模式 代码演示: ...
- RabbitMQ消息模型之FanoutExchange消息模型实战
前面我们学习了RabbitMQ的核心基础组件,了解了基本消息模型由队列.交换机.路由构成.而在RabbitMQ的核心组件体系中,主要有4种消息模型:基于HeadersExchange.DirectEx ...
- RabbitMQ快速入门--消息模型介绍
RabbitMQ消息模型 RabbitMQ官方提供了5个不同的Demo示例,对应了不同的消息模型:
- Python实现RabbitMQ中6种消息模型(转)
RabbitMQ与Redis对比 RabbitMQ是一种比较流行的消息中间件,之前我一直使用redis作为消息中间件,但是生产环境比较推荐RabbitMQ来替代Redis,所以我去查询了一些Rab ...
- RabbitMQ之五种消息模型
首先什么是MQ MQ全称是Message Queue,即消息对列!消息队列是典型的:生产者.消费者模型.生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息.因为消息的生产和消费都是异步的,而 ...
- RabbitMQ消息队列:发布/订阅(Publish/Subscribe)
2019独角兽企业重金招聘Python工程师标准>>> 前面我们把每个Message都是deliver到某个单一的Consumer.今天我们将了解如何把同一个Message deli ...
- Springclould D3 RabbitMQ消息队列
这里的支付服务是指支付成功后的后续操作(支付成功后才会产生订单以及一系列的操作)3. 也就是说只有支付成功后请求才会被发送到这个服务,如果支付失败,在第一步调用接口时就会返回失败4. 这里要表示的就是 ...
- RabbitMQ支持的消息模型
一.rabbitMQ支持的消息模型如下 第一种模型(直连) 在上图的模型中,有以下概念: P:生产者,也就是要发送消息的程序 C:消费者:消息的接受者,会一直等待消息到来. queue:消息队列,图中 ...
- SpringBoot整合RabbitMQ 实现五种消息模型
目录 SpringBoot中使用RabbitMQ 搭建初始环境 引入依赖 配置配置文件 测试类 注入 rabbitTemplate 消息队列RabbitMQ之五种消息模型 第一种直连模型使用 开发生产 ...
- RabbitMQ 基本消息模型和消息确认机制
01 前言 关于 RabbitMQ 服务器的安装,本章节不做介绍,请培养个人动手能力,自行百度解决.RabbitMQ 成功安装后(win 版),浏览器输入:localhost:15672,则可以进入 ...
最新文章
- 关于分布式系统的数据一致性问题(一)
- halcon车牌识别完整源码_基于chineseocr_lite的身份证、火车票、车牌等中文OCR文字识别...
- VC安装证书到指定CSP
- java调用siri 语言_如何更改Siri的声音,口音,性别和语言
- php strcmp函数用法,php字符串比较函数用法小结(strcmp,strcasecmp,strnatcmp及strnatcasecmp)...
- 赠书 | 如何建设数据中台?看这份企业数据能力测评就够了!
- 每天一算:Two Sum II
- Centos7.0升级python 2.x到3.x
- matlab后处理保存avi动画
- Java JDK文档下载
- 《C专家编程》学习笔记(对链接的思考)
- c++17之结构化绑定
- 回顾一年的工作历程_但回首这一年来的工作经历
- php中hr标签的用法,HTML: hr 标签
- PHP基础知识【大纲】
- TL-WR941N救砖记
- 段永平“徒孙”沈义人:30岁当OPPO副总裁,取代刘强东成宿迁之光
- 昨天晚上的直播都聊了啥?
- cms开发(CMS开发)
- 分析机械行业信息化应用给企业带来哪些改变
热门文章
- C++ 中打开 exe 文件
- mysql计算结果取整_Sql 获取向上取整、向下取整、四舍五入取整的实例(转)
- BD15AAANB10派克伺服阀
- 鼠标垫测试软件,百款鼠标垫测试(项目)
- Word 自动更改题注章节编号格式“图一.1”为“图1.1”
- 反射:获取Class类的三种方法
- 让机器人飞入寻常百姓家,优必选这三步棋很关键
- [19/05/14-星期二] HTML_body标签(列表标签和图片标签)
- Harbor2.2 用户角色权限速查
- 微信公众号接口类(PHP版本)