RabbitMQ学习总结(四)之消息分发机制

9 篇文章 1 订阅
7 篇文章 0 订阅
本文介绍了RabbitMQ的三种消息分发机制:轮询分发、不公平分发和预取值分发。轮询分发确保每个消费者均匀接收消息;不公平分发则根据消费者处理速度动态分配任务,提高效率;预取值分发允许消费者预先获取一定数量的消息,提高吞吐量。通过调整这些机制,可以优化RabbitMQ在不同场景下的性能。
摘要由CSDN通过智能技术生成

作者处于学习阶段,刚刚完成RabbitMQ的学习,作为学生,我会用更通俗的说法,来叙述自己对RabbitMQ的了解。愿各位大佬看到有见解错误的地方和叙述不好的地方,能够帮忙纠正。来帮助大家更加深入的了解RabbitMQ。

一、RabbitMQ的分发机制

RabbitMQ有三种分发机制:轮询分发、不公平分发、预值分发。

二、轮询分发

轮询分发是默认的分发方式。其实轮询分发的理论只是很容易去解释,假如有A,B,C三个消费者,第一次消息发给了A队列,那么下一次就会分发给B,C当中的一个,假如再分发给B之后,那么就会分发给C。再来消息就会分发给A。这种叫做轮训分发,也叫做公平分发。每个队列的工作量是相同的,不会忘记谁,或者一直使用谁。

三、不公平分发

举一个例子,如果轮训分发的话,消费者A处理任务很快,而消费者B很慢。如果使用轮询分发,就会导致消费者A处于空闲状态,而消费者B却在一直干活。而如果使用了不公平分发,就可将任务发给空闲的消费者,而不是一直在那里等来等去。

如何设置为不公平分发

四、预取值分发

例如:channel.basicQos(5),就是设置该信道预取5条消息,当接受5条消息后,就将不再应答后续的消息,而内部传参的数字就是预取值的数量(要求大于1)

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱分享的小邓

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值