分布式一致性协议-2PC与3PC(二)

一、分布式一致性

一个事务需要跨多个分布式节点,又要保持事务的ACID特性,需要引入协调者来统一调度所有分布式节点的执行逻辑,被调度的节点称为参与者

协调者负责调用参与者,并决定最终是否提交事务。基于这个思想,衍生出2PC和3PC两种协议

二、2PC协议(Two phase commit)

二阶段提交:将事务分成了投票和执行两个阶段。

优点:原理简单

缺点:同步阻塞、单点问题、脑裂

事务提交场景:

 

事务回滚场景:

 三、3PC(Three phase commit)

 三阶段提交:将2PC的执行事务过程一分为二,形成canCommit、Precommit、doCommit三个阶段的事务处理协议。

 优点:解决单点问题、降低参与者阻塞范围

 缺点:一旦出现网络分区协调者与参与者无法通信,参与者在超时之后,依然会提交事务,造成数据不一致

猜你喜欢

转载自www.cnblogs.com/sunrisexq/p/9034498.html