shengyayun 10 X 10
shengyayun:~/blog$ source "分布式事务:TCC模式.sh"

shengyayun:~/blog$ printenv
CREATED_DATE = 2022-02-25
UPDATED_DATE = 2022-02-25
TAGS = Seata
CATEGORIES =

shengyayun:~/blog$ grep -lr $TAGS post
2022-02-25 分布式事务:AT模式
2022-02-25 分布式事务:TCC模式
分布式事务:TCC模式

场景

  1. 用户提交订单;
  2. 减少库存数量;

术语

Try:资源的检测和预留;
Confirm:执行的业务操作提交;要求 Try 成功 Confirm 一定要能成功;
Cancel:预留资源释放;
幂等性:Confirm与Cancel必须实现幂等,因为如果执行失败,TC会不断重试。
允许空回滚:Try未执行过的情况下,也可以Cancel成功。
防悬挂控制:Cancel后Try被调用也不执行。

时序图