一次并发的update引起的血案 ----rocketMQ 多实例消费致使的错误。

事故现场:mysql       系统引入了rocketMQ,用来对某些订单进行状态的更新操做。部署的时候2台消费实例。在测试环境中只考虑了用乐观锁来控制并发,但在生产中,乐观锁并没有法保证数据的正确性。redis   具体的消费状况参考上图。spring 假定消息A和消息B 都是为了更新表中的同一行数据,更新逻辑是,拿到消息A 进行更新,拿到消息B 在更新一次。最终获得的结果为,消息B。sql
相关文章
相关标签/搜索