为什么要实现消息重发?任何一个系统都不敢保证100%稳定,消息重发是为了解决消息服务中心故障恢复后,能够让失败了的消息能发出去,业务系统能够尽可能的恢复数据。
什么是需要回执的消息?MQ 不能保证业务方接受消息处理后100%正确,回执就是在业务方处理完消息后主动给消息服务系统“反馈”我成功的处理了本次业务,你可以删除本条消息。
比较官方的 RabbitMQ 消息发送成功或失败的时候,都会调用 ConfirmListener 或者 ReturnListener。本场 Chat 所讲的实现是基于数据库实现的,不采用官方方案。官方方案对业务入侵很严重,处理业务过程中会掺杂非业务相关的逻辑。本场 Chat 会对消息重发、需要回执的消息这两种方案进行实战代码分析。
阅读全文: http://gitbook.cn/gitchat/activity/5b31acaa7ea05569dea5862a
您还可以下载 CSDN 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。