一、业务场景
从移动系统同步订单状态,根据同步过来的状态来执行自己系统的业务逻辑
由于移动那边的订单状态不会以为我们这边业务逻辑而回滚他们的状态
所以只能采用 最终一致性,即我们这边的业务逻辑不停的进行重试,来达到最终一致性
二、实现细节
同步移动的订单状态,进行入库操作,然后发送mq消息通知进行业务逻辑变更
入库操作 增加字段来标识 是否标识 当前的状态变更是否完成了业务逻辑变更字段;如果已经进行了业务变更,将标识改成已进行业务逻辑处理;
起动job进行扫描超过多长时间还未进行业务逻辑处理的记录,再次进行通知
注意:消费通知的业务 进行消息消费的时候需要进行锁操作、进行幂等性操作
锁操作 防止 多个消费者一起消费相同的消息(因为可能重复发送)