支付宝蚂蚁金服-分布式事务中的

关注人数:64 发布时间:2021-11-14 13:49:09

try-confirm-cancel(tcc)是初步操作(try)、确认操作(confirm)和取消操作(cancel)三种操作的缩写,这三种操作的业务含义如下:

支付宝蚂蚁金服

try 阶段:对业务系统做检测及资源预留;

confirm 阶段:对业务系统做确认提交。默认 confirm 阶段是不会出错的,只要 try 成功,confirm 一定成功;

cancel 阶段:当业务执行出现错误,需要回滚的状态下,执行业务取消,释放预留资源。

tcc 是二阶段提交协议(two-phase commit protocol,简称 2pc)的扩展,try 操作对应 2pc 中一阶段的准备提交事务(prepare),confirm 对应 2pc 中二阶段事务提交(commit),cancel 对应 2pc 中二阶段事务回滚(rollback)。

与 2pc 不同的是,tcc 是一种编程模型,是应用层的 2pc;tcc 的 3 个操作均由编码实现,通过编码实现了 2pc 资源管理器的功能。

tcc 自编码的特性决定 tcc 资源管理器可以跨数据库、跨应用实现资源管理,将对不同的数据库访问、不同的业务操作通过编码方式转换一个原子操作,解决了复杂业务场景下的事务问题。同时 tcc 的每一个操作对于数据库来讲都是一个本地数据库事务,操作结束则本地数据库事务结束,数据库的资源也就被释放;这就规避了数据库层面的 2pc 对资源占用导致的性能低下问题。

支付宝蚂蚁金服

查看全文

猜你喜欢

开店攻略分类

微商代理怎么做