分布式事务解决方案-消息队列-定时任务-本地事件表 生产者:生产消息 定时任务:更新消息状态 并 放入MQ 消费者:监听MQ消费消息,插入自己的DB,手动ACK,遇到异常就recover,处理死信 MQ一致性: 如果消息还未到MQ,MQ挂了 消息到了MQ,MQ挂了 消费者消费的时候,MQ挂了 解决: 数据库中有记录,等MQ恢复时,定时任务会重新发送 (更新消息状态和写MQ是在一个事务保证) 消息队列持久化 手动ACK 消息幂等: 依赖消费者DB主键冲突,也可以考虑用Redis