RabbitMQ五种模式及使用场景

RabbitMQ基本模式

1.基本模型

在这里插入图片描述

2.RabbitMQ应用场景

MQ全称为Message Queue,即消息队列, RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛。

开发中消息队列通常有如下应用场景:

1、任务异步处理。
将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理。提高了应用程序的响应时间。
2、应用程序解耦合
MQ相当于一个中介,生产方通过MQ与消费方交互,它将应用程序进行解耦合。

消息中间件的作用:
  • 应用解耦
  • 弹性伸缩
  • 弹性伸缩
  • 冗余存储
  • 流量削峰
  • 异步通信
  • 数据同步

3.RabbitMQ五种基本模式

(1)简单模式

一个生产者,一个消费者。生产者将消息放入队列。消费者监听队列,如果队列中有消息,就消费掉,消息被拿走后,自动从队列删除。
应用场景:
聊天。
在这里插入图片描述

2.工作模式

一个生产者,多个消费者,每个消费者获取到的消息唯一。生产者将消息放入队列。多个消费者同时监听同一个队列。谁先拿到消息,谁来负责消费。
应用场景:
红包
在这里插入图片描述

3.订阅模式

一个生产者发送的消息会被多个消费者获取。生产者将消息交给交换机。交换机根据发布订阅的模式设定将消息同步到所有的绑定队列中。后端的消费者都能拿到消息。
应用场景:
群聊天,广告。
在这里插入图片描述

4.路由模式

发送消息到交换机并且要指定路由key ,消费者将队列绑定到交换机时需要指定路由key。生产者发送消息到交换机,同时绑定一个路由Key。交换机根据路由key对下游绑定的队列进行路由key的判断,满足路由key的队列才会接收到消息,消费者消费消息。
应用场景:
项目中的error报错。
在这里插入图片描述

5.主题订阅模式

将路由键和某模式进行匹配,此时队列需要绑定在一个模式上,“#”匹配一个词或多个词,“*”只匹配一个词。
与routing路由模式一致。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值