扫码阅读
手机扫码阅读
四种策略确保 RabbitMQ 消息发送可靠性!你用哪种?
22 2024-11-05
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
文章来源:
江南一点雨
扫码关注公众号
摘要
松哥原创的Spring Boot视频教程已经完成,涉及消息中间件的重要性,以RabbitMQ为例,探讨了确保消息发送可靠性的策略。
1. RabbitMQ消息发送机制
消息发送涉及到两个重要步骤:成功到达Exchange和成功到达Queue。确保这两步可以认为消息发送成功,出现问题时可能需要重试或人工介入。确保消息发送成功需要三个步骤:确认消息到达Exchange,确认消息到达Queue,以及开启定时任务重发失败的消息。
2. RabbitMQ的努力
RabbitMQ提供了两种方案来保证消息发送成功:事务机制和发送方确认机制。开启事务机制通过四个额外步骤来保证消息发送,但效率较低。发送方确认机制性能更高,通过配置publisher-confirm-type和publisher-returns两个监听来实现。此外,批量处理的回调监听与单条消息处理相同。
3. 失败重试
失败重试分为两种情况:没找到MQ的失败重试和消息发送失败的重试。前者通过Spring Boot的retry机制解决,后者通过数据库记录消息并定时检查重试次数来解决。重试的策略需要根据情况考虑MQ的Qos和消息的幂等性问题。
4. 小结
松哥总结了消息生产者的常见问题和解决方案,并提到下篇文章将探讨保证消息消费成功和解决幂等性问题。相关源代码可在GitHub下载。
想要了解更多内容?
文章来源:
江南一点雨
扫码关注公众号
江南一点雨的其他文章
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线