rabbitmq五种模式

rabbitmq五种模式

1.简单模式
2.争抢模式(工作模式,工作争抢模式)
3.路由模式 route
4.发布订阅模式 fanout
5.主题模式 topic
6. RPC异步调用模式(不常用)

1.简单模式
当生产者发送消息到交换机,交换机根据消息属性发送到队列,消费者监听绑定队列实现消息的接收和消费逻辑编写.简单模式下,强调的一个队列queue只被一个消费者监听消费.
1.1 结构
在这里插入图片描述
生产者:生成消息,发送到交换机
交换机:根据消息属性,将消息发送给队列
消费者:监听这个队列,发现消息后,获取消息执行消费逻辑

1.2 应用场景
常见的应用场景就是一发,一接的结构
例如:
手机短信,邮件单发

2.争抢模式
强调的也是后端队列与消费者绑定的结构
2.1 结构
在这里插入图片描述
生产者:发送消息到交换机
交换机:根据消息属性将消息发送给队列
消费者:多个消费者,同时绑定监听一个队列,之间形成了争抢消息的效果

2.2 应用场景
抢红包
资源分配系统

3.路由模式
将消息携带routing key和队列绑定的routing key,如果匹配上了,就把消息大送给队列
在这里插入图片描述
4.发布订阅模式 fanout
交换机把数据发送给所有的队列
在这里插入图片描述
生产端:发送消息到交换机
交换机:由于是发布订阅模式,会将这个消息发送同步到后端所有与其绑定的队列
消息端:简单模式 1个队列绑定一个消费者 争抢模式 1个队列绑定多个消费者

应用场景
邮件的群发,广告的群发

5.主题模式 topic
非常类似于路由模式的结构,区别在于后端队列绑定交换机使用的路由key.
在这里插入图片描述
交换机绑定队列,不在使用具体的路由key,可以使用符号代替路由key值的规则
在这里插入图片描述
应用场景
实现多级传递的路由筛选工作.

三种交换机:
direct(路由) —>对应路由模式 —>100%routing key匹配上了,交换机才会把数据发送给队列
fanout(发布订阅) —>对应发布订阅模式 —>只要队列发布了交换机,就会把数据发送给队列,不会去管routing key是
否匹配
topic(主题)—>对应主题模式 —>可以定义多级路径,可以进行模糊匹配。

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值