IT技术博客大学习 共学习 共进步

Two-phase commit(2PC) 与MySQL Cluster

MySQL实验室 2010-04-15 13:49:38 浏览 3,561 次

Two-phase commit(两阶段提交, 文中用2PC代替)是一种比较精简的一致性算法/协议。在事务处理、数据库和计算机网络中,两阶段提交协议提供了分布式设计中的数据一致性的保障,整个事务的参与者要么一致性全部提交成功,要么全部回滚。MySQL Cluster内部数据的同步就是用的2PC协议。 by ivan@mysqlab.net

故名思意,2PC算法包含两个阶段:commit-request 和 commit。

第一阶段(commit-request): 组织者(coordinator)负责询问事务的所有参与者(participants)是否可以提交或者取消事务(回滚)。 这就好比班长组织班级所有同学某时间参加班级大会一样,要么所有人都参加,要么取消会议。

MySQL Cluster 事务提交第一阶段

MySQL Cluster 事务提交第一阶段

第二阶段(commit):组织者(coordinator)根据第一阶段的“投票”结果,决定是否提交事务,或者回滚事务,然后通知所有的参与者。

MySQL Cluster 事务提交第二阶段 成功提交

MySQL Cluster 事务提交第二阶段 成功提交


MySQL Cluster 事务提交第二阶段 失败回滚

MySQL Cluster 事务提交第二阶段 失败回滚

建议继续学习

  1. LVS & MySQL NDB Cluster (阅读 4,823)
  2. 利用MySQL Cluster 7.0 + LVS 搭建高可用环境 (阅读 4,503)
  3. MySQL Cluster 与 MongoDB 复制及分片设计及原理 (阅读 4,042)
  4. MySQL Cluster致命缺点 (阅读 3,883)
  5. MySQL Cluster Manager 工作原理、安装及使用 (阅读 3,844)
  6. Oracle cluster使用场景分析 (阅读 3,583)
  7. MySQL Cluster集群探索与实践 (阅读 3,463)
  8. Blob/Text字段类型在MySQL Cluster中的处理 (阅读 3,263)