本文主要介绍DRDS分布式事务的基本原理。

分布式事务通常使用二阶段提交来保证事务的原子性(Atomicity)和一致性(Consistency)。

二阶段事务会将事务分为以下两个阶段:

  • 准备(PREPARE)阶段:在PREPARE阶段,数据节点会准备好所有事务提交所需的资源(例如加锁、写日志等)。
  • 提交(COMMIT) 阶段:在COMMIT阶段,各个数据节点才会真正提交事务。

当提交一个分布式事务时,DRDS服务器会作为事务管理器的角色,等待所有数据节点(MySQL服务器) PREPARE成功,之后再向各个数据节点发送COMMIT请求。