![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
RabbitMQ
文章平均质量分 83
wanger61
这个作者很懒,什么都没留下…
展开
-
消息队列与RabbitMQ常见面试题总结
一. 消息队列概述¥1. 为什么要用消息队列,消息队列的应用场景异步处理: 提高系统性能,减少响应所需时间应用解耦: 系统间通过消息通信,不用关心其他系统的处理。流量削锋 : 可以通过消息队列长度控制请求量;先将短时间高并发产生的事务消息存储在消息队列中,然后后端服务再慢慢根据自己的能力去消费这些消息,这样就避免直接把后端服务打垮掉。日志处理 :解决大量日志传输。消息通讯 :消息队列一般都内置了高效的通信机制,因此也可以用在纯的消息通讯。比如实现点对点消息队列,或者聊天室等。2. 使用消息原创 2021-01-15 19:08:23 · 180 阅读 · 0 评论 -
RabbitMQ学习总结(三)——消息分发,限流与幂等性问题
RabbitMQ学习总结在上一张讲完了生产端的问题,这一章来讨论一下消费端的问题,首先第一个问题就是MQ如何确认消息被消费端成功接收。一. 消费端ACK确认为了保证消息被消费端成功接收,RabbitMQ在将消息发送给消费者之后,会要求消费者在收到消息后返回一个ACK确认,而RabbitMQ在收到该ACK确认后,知道消费端已经成功接收到了该消息,从而安全地将该消息从队列中删除。另外,当消费端收到消息后,也可以返回NACK,并设置消息重回队列,即将该消息重新放到消息队列队尾(不过一般不会设置重回队列,原创 2020-05-22 20:51:53 · 286 阅读 · 0 评论 -
RabbitMQ学习总结(二)——Confirm消息确认与可靠性投递
RabbitMQ学习总结前面讲到了使用消息队列解耦时,生产端只需负责将消息投递到消息队列就完事了,那么必须要考虑的问题就是如何保证生产端将消息可靠的投递到了MQ中AMQP协议以及RabbitMQ考虑到了这一问题,因此在设计时添加了Confirm消息确认机制和Return机制,首先先讲一下这两个机制一. Confirm消息确认机制和Return机制Confirm消息确认机制: 生产者向MQ投递完消息后,要求MQ返回一个应答,生产者异步接收该应答,用来确定该消息是否正常的发送到了Broker, 从而保障原创 2020-05-22 16:40:52 · 1331 阅读 · 0 评论 -
RabbitMQ学习总结(一)——核心概念与初步整合
RabbitMQ学习总结一.消息队列的概述消息队列解决的问题:异步处理应用解耦:在分布式服务之间添加消息中间件,达到服务之间的解耦流量削峰:在高并发业务前添加一层消息中间件,过滤掉一些请求后再将请求递交给业务日志处理:大数据方面的应用主流的消息中间件:ActiveMQ: 老牌消息中间件,但是在性能上不如现在的其他消息队列,可以在并发量较小的场景下使用Kafka: 追求高吞吐量,但对于消息的重复,丢失,错误等没有严格的要求,适合产生大量数据的互联网服务的数据收集业务RocketMQ:原创 2020-05-22 14:10:27 · 118 阅读 · 0 评论