解决分布式 TCC 事务中的幂等、悬挂、空回滚问题

思路:
  幂等:利用数据库唯一键,保证同一事物,只会有一条数据插入,否则引发唯一键异常。且tcc事务表与业务表在同一数据库,当业务运行时异常或服务宕机时,插入数据同时回滚,避免流程异常不可重试。
  防悬挂:利用幂等检测插入数据检测是否已插入 Cancel,存在则直接返回失败。
  空回滚/确认:利用幂等检测插入数据检测是否已插入 Try,不存在则直接跳过。
PS: 幂等会对三阶段分别检测,利用幂等检测的已插入数据检测三阶段的执行情况。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注