美文网首页
余额 TCC 实现分析

余额 TCC 实现分析

作者: 林万程 | 来源:发表于2021-10-30 11:32 被阅读0次

    为什么要有可用余额字段?
    为什么是可用金额,
    而不是预留金额/冻结金额?

    在分布式事务 TCC 中 T 阶段要先锁住金额以便事务失败回滚时不会出现金额被取走导致回滚失败出现负账。

    预留金额模式

    入账

    T:账户+入账,预留+入账
    C:预留-入账
    R:账户-入账,预留-入账

    出账

    T:预留+出账 where 账户-预留>出账
    C:账户-出账,预留-出账
    R:预留-出账

    可用余额模式

    入账

    T:账户+入账
    C:可用+入账
    R:账户-入账

    出账

    T:可用-出账 where 可用>出账
    C:账户-出账
    R:可用+出账

    可以看出可用余额模式要简单得多。

    在实现中还需要预留金额表记录未完成的预留金额明细,以便知道冻结的金额明细是处于什么状态。

    相关文章

      网友评论

          本文标题:余额 TCC 实现分析

          本文链接:https://www.haomeiwen.com/subject/wpjgaltx.html