RabbitMQ的分发机制

https://www.kuangstudy.com/zl/rabbitmq#1366709722819948546

MQ消息队列有如下几个角色:
1、生产者
2、存储消息
3、消费者

一. 分发模式

在这里插入图片描述
1.发布订阅:生产者发送消息到消息队列进行存储,消费者们只要订阅了,就会收到消息队列中的消息,是一种推的机制。这是它一个最基础的功能。

2.轮询分发:生产者将消息投递到消息队列,消息队列会按照一定的机制将消息推送给消费者,而这种规则呢是一种公平的分发;并不会因为消费者的延时而造成他的不公平性(不论你的服务器性能怎么样,都会是公平的,消息队列中的消息平均分发,不会造成数据的倾斜),一旦有一个消费者消费了消息,后面的消费者就不会重复的去消费消息;自动应答。

3.公平分发:公平分发会按照服务器的性能来分配,快的消费多一点,慢的消费少一点(能者多劳);会造成数据的倾斜;一旦有一个消费者消费了消息,后面的消费者就不会重复的去消费消息;需要手动应答。

4.重发:当app创建了订单,但是订单系统出现了故障,这个时候我们的消息队列中会有一个应答机制,它没有收到消费成功的反馈(如:消费的服务器出现故障),就会造成消息的堆积,但是堆积的消息不会删除掉,它会重新发送给另一个消费的服务器来进行消费,以此类推;它的目的就是为了保证消息的一个可靠性(KafKa不支持重发)。

5.消息拉取:rbc通讯机制,消息被动拉取。

二.AMQP协议

1.生产者
在这里插入图片描述
2.消费者
在这里插入图片描述

三.RabbitMq的主要组成

在这里插入图片描述
Server:又称Broker ,接受客户端的连接,实现AMQP实体服务。 安装rabbitmq-server
Connection:连接,应用程序与Broker的网络连接 TCP/IP/ 三次握手和四次挥手
Channel:网络信道,几乎所有的操作都在Channel中进行,Channel是进行消息读写的通道,客户端可以建立对各Channel,每个Channel代表一个会话任务。
Message :消息:服务与应用程序之间传送的数据,由Properties和body组成,Properties可是对消息进行修饰,比如消息的优先级,延迟等高级特性,Body则就是消息体的内容。
Virtual Host 虚拟地址,用于进行逻辑隔离,最上层的消息路由,一个虚拟主机理由可以有若干个Exhange和Queueu,同一个虚拟主机里面不能有相同名字的Exchange
Exchange:交换机,接受消息,根据路由键发送消息到绑定的队列。(不具备消息存储的能力)
Bindings:Exchange和Queue之间的虚拟连接,binding中可以保护多个routing key.
Routing key:是一个路由规则,虚拟机可以用它来确定如何路由一个特定消息。
Queue:队列:也成为Message Queue,消息队列,保存消息并将它们转发给消费者。

消息模式

03-1、简单模式 Simple
参考第12章节
03-2、工作模式 Work
web操作查看视频
类型:无
特点:分发机制
03-3、发布订阅模式
web操作查看视频
类型:fanout
特点:Fanout—发布与订阅模式,是一种广播机制,它是没有路由key的模式。
03-4、路由模式

web操作查看视频
类型:direct
特点:有routing-key的匹配模式
03-5、主题Topic模式**
web操作查看视频
类型:topic
特点:模糊的routing-key的匹配模式
03-6、参数模式
web操作查看视频
类型:headers
特点:参数匹配模式

##分发模式

1默认轮询分发 默认 每个服务器不论性能一个一个分发接收

2公平分发 应答机制必须是手动应答 autoACk=false 并且手动应答 ,且设置qs qs默认轮询分发
qs=1 (没次可以从rabbitmq取出的数据,更具服务器性能设置,不能太大)且手动应答 公平分发

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值