本文主要介紹PolarDB-X 1.0分布式事務的基本原理。
分布式事務通常使用二階段提交來保證事務的原子性(Atomicity)和一致性(Consistency)。
二階段事務會將事務分為以下兩個階段:
- 準備(PREPARE)階段:在PREPARE階段,數據節點會準備好所有事務提交所需的資源(例如加鎖、寫日志等)。
- 提交(COMMIT) 階段:在COMMIT階段,各個數據節點才會真正提交事務。
當提交一個分布式事務時,PolarDB-X 1.0服務器會作為事務管理器的角色,等待所有數據節點(MySQL服務器) PREPARE成功,之后再向各個數據節點發送COMMIT請求。
關于如何使用分布式事務,詳情請參見基于MySQL 5.7的分布式事務。