分布式事务
2017-05-07 本文已影响0人
辰晞
无实际经验,只是技术预演。
ACID已经不行了,分布式就是CAP,或者BA -S -E。
BA - S - E C - A - P分布式事务用两阶段,那就阻塞了,同步。还有,你要A和BCD之间使用二阶段,那一个D失败,BC就都要回滚。最后,二阶段,三阶段都不能真正的保证分布式事务,存在的单点,网络都可能导致不一致。老外的话:世界上只有一种一致性算法,Paxos。所以,高并发的分布式事务都是基于MQ消息队列的。A完成到MQ之间就行了,D失败了,跟A也没有关系了。
理解的就这样,无它。
参考:龙果学院补充:
消息状态确认子系统,要求生产者提供结果查询接口,业务成功,就更改状态,业务失败,就删除消息。
消息恢复子系统,要求处理端提供幂等性,对存在的可发送消息,由于超时等,进行重发。
在处理流程的一致性问题上,就是会造成重试。
异常