Two-Phase Commit
两阶段提交(2PC)是跨节点事务原子提交协议:协调者先问所有参与者能否提交,再决定提交或中止。
用途
实现分布式事务原子性,理解其阻塞与协调者单点问题。
机制
阶段一(prepare):协调者发 prepare,参与者写 WAL 并回复 yes/no。阶段二(commit/abort):全 yes 则发 commit,否则 abort。协调者崩溃则参与者阻塞(不确定)。
用例
- 分布式事务设计
- 跨节点原子提交
- XA 协议
两阶段提交(2PC)是跨节点事务原子提交协议:协调者先问所有参与者能否提交,再决定提交或中止。
实现分布式事务原子性,理解其阻塞与协调者单点问题。
阶段一(prepare):协调者发 prepare,参与者写 WAL 并回复 yes/no。阶段二(commit/abort):全 yes 则发 commit,否则 abort。协调者崩溃则参与者阻塞(不确定)。