分布式一致性协议-2PC与3PC(二)
一、分布式一致性
一个事务需要跨多个分布式节点,又要保持事务的ACID特性,需要引入协调者来统一调度所有分布式节点的执行逻辑,被调度的节点称为参与者。
协调者负责调用参与者,并决定最终是否提交事务。基于这个思想,衍生出2PC和3PC两种协议
二、2PC协议(Two phase commit)
二阶段提交:将事务分成了投票和执行两个阶段。
优点:原理简单
缺点:单点问题、同步阻塞、无限期等待、脑裂
事务提交场景:
事务回滚场景:
三、3PC(Three phase commit)
三阶段提交:将2PC的执行事务过程一分为二,形成canCommit、preCommit、doCommit三个阶段的事务处理协议。
优点:解决单点问题、添加preCommit过程,避免2PC提交协议的无限期等待问题
缺点:一旦出现网络分区协调者与参与者无法通信,参与者在超时之后,依然会提交事务,造成数据不一致
相关推荐
bluewelkin 2020-08-17
xayddxjsjxywuhui 2020-07-20
Cheetahcubs 2020-07-05
isHooky 2020-07-04
粗茶淡饭 2020-06-25
dailingnan0 2020-05-29
huacuilaifa 2020-05-26
middleware0 2020-05-17
憧憬 2020-05-16
憧憬 2020-05-10
深圳克林斯曼 2020-05-07
zyjj 2020-05-07
xiaoxiangyu 2020-04-30
loviezhang 2020-04-26
枫叶上的雨露 2020-04-25
亦碎流年 2020-04-19
loviezhang 2020-04-17
huacuilaifa 2020-04-17
憧憬 2020-04-11