5.3.3 SAGA SAGA 事务模式历史悠久,早于分布式事务概念的提出。 SAGA 起源于 1987 年普林斯顿大学的 Hector Garcaa-Molina 和 Kenneth Salem 在 ACM 发表的论文《SAGAS》[^1]。该论文提出了一种提高“长时间事务”(Long Lived Transaction)效率的方法,核心思路是将一个大事务分解为多个可以交错运行的子事务,并在每个子事务中引入补偿操作。 SAGA 最初的目的是为了避免大事务长时间占用数据库资源,后来演变为一种在分布式环境中将大事务拆分为一系列小事务的设计模式。在 SAGA 模式下,分布式事务由多个参与者构成,每个参与者需要实现相应的正向操作和逆向回滚操作,以根据具体业务场景进行补偿。