![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
RabbitMQ
文章平均质量分 55
小纸人呀
这个作者很懒,什么都没留下…
展开
-
RabbitMQ 处理unacked消息
原因:消费端由于没有确认消息,导致队列阻塞,这是RabbitMQ的一种保护机制。防止当消息激增的时候,海量的消息进入consumer而引发consumer宕机。 RabbitMQ提供了一种QOS(服务质量保证)功能,即在开启手动确认消息的前提下,限制信道上的消费者所能保持的最大未确认的数量。可以通过设置PrefetchCount实现。 举例说明:可以理解为在consumer前面加了一个缓冲容器,容器能容纳最大的消息数量就是PrefetchCount。如果容器没有满Rabb...原创 2021-04-06 10:36:17 · 8595 阅读 · 0 评论 -
RabbitMQ:消息丢失处理
RabbitMQ存在数据丢失的三种情况: ①生产者发送消息失败: 写消息的过程中,消费还没到MQ,在网络传输过程中丢了,或者是消费到了RabbitMQ,但是MQ那出错了,没保存下来。②中间件挂了:RabbitMQ接收到消费之后,先暂存在自己的内存里,结果消费者还没来得及消费,RabbitMQ自己挂掉了,导致暂存在内存中的数据丢了。③消费者弄丢数据:消费了拿到了这个数据,但还没来得及处理,自己就挂掉了。但是RabbitMQ以为这个消费者消费完了。...原创 2021-04-06 10:21:09 · 641 阅读 · 0 评论