事务干货放送 细说分布式事务两阶段提交( 三 )


因此3PC还有一个关键优化是协调者宕机后 , 迅速找到一个继任者 , 继续未完的流程 , 尽量保证不会出现参与者超时提交的现象 。 但是如果出现诸如网络分区等异常 , 新的协调者联系不上参与者 , 还是会产生一致性问题 。
3PC通过牺牲一定的C(onsistency)来提高A(vailability) , 并且增加了网络开销 , 这些都是OLTP系统很难接受的 , 所以基本没有系统会采用 。
但是协调者高可用 , 确实可以使block的时间大幅减少 , 基于诸如Paxos/Raft的一致性协议的高可用方案 , 可以让多个节点就commit/abort达成一致后 , 再去通知参与者 , 当协调者出现异常 , 可以迅速选出新的协调者 , 推进事务至完成 。
【事务干货放送 细说分布式事务两阶段提交】


推荐阅读