TCC
2021-04-03 11:09:32 1 举报
分布式事务
作者其他创作
大纲/内容
交易系统
confirmupdate stock_log set status='success' where xid=? and status ='init'
超时处理轮询中间状态:stock success,voucher success,voucher fail等。调用cancel进行回滚
confirmupdate voucher_log set status='success' where xid=? and status = 'init'
xid satus='stock_fail'
xid status ='paying'
confirm2
生成交易id = xid
xid satus='init'
xid satus='stock_success'
营销系统
try1
confirm1
商品系统
cancel
优惠券
xid 是交易流水号;stock是库存表;stock_log库存操作日志表; item_id 商品id;
try2
库存
cancelupdate stock set amount = amount+1 where item_id = ? ;update stock_log set status='rollback' where xid=? and status='init'
xid satus='voucher success'
0 条评论
下一页