RabbitMQ

FAQ

Q: 如何确保消息不丢失?

Q: mq 的缺点

Q: 如何避免消息重复投递或重复消费?

在消息生产时,MQ 内部针对每条生产者发送的消息生成一个 inner-msg-id,作为去重的依据(消息投递失败并重传),避免重复的消息进入队列;
在消息消费时,要求消息体中必须要有一个 bizId(对于同一业务全局唯一,如支付 ID、订单 ID、帖子 ID 等)作为去重的依据,避免同一条消息被重复消费

Q: rabbitmq 怎么避免消息丢失?

消息持久化
ACK确认机制
设置集群镜像模式
消息补偿机制

Q: 要保证消息持久化成功的条件有哪些?

参考资料

https://zhuanlan.zhihu.com/p/62087283
https://juejin.im/post/5dfc93a5f265da339b500273#heading-7

原文地址:https://www.cnblogs.com/yudidi/p/12188722.html