当前位置:首页 » 《随便一记》 » 正文

详解分布式事务解决方案之TCC机制_沸羊羊_

27 人参与  2021年11月19日 14:23  分类 : 《随便一记》  评论

点击全文阅读


前言

之前讲解了分布式事务的解决方案之2PC和3PC,今天主要讲解事务补偿机制(TCC),Let's go !

TCC

TCC 事务补偿是基于 2PC 实现的业务层事务控制方案,它是 try, Confirm, Cancel 三个单词的首字母,含义如下:

  • try 检查及预留业务资源完成提交事务前的检查,并预留好资源
  • confirm 确定执行业务操作,对 try 阶段预留的资源正式执行
  • cancel 取消执行业务操作,对 try 阶段预留的资源进行释放

image.png

将 TCC 机制带进业务为例:

1、try

下单业务由订单服务和库存服务协同完成,在 try 阶段订单服务和库存服务完成检查和预留资源

比如:订单服务检查当前是否可以满足提交订单,库存服务检查是否有充足的库存,并锁定资源

2、confirm

订单服务和库存服务成功完成 try 后开始正式执行资源操作。

比如:订单服务写入一条订单信息,库存服务扣除库存

3、cancel

订单服务和库存服务有一方出现失败则全部取消操作。

比如:订单服务需删除新增的订单信息,库存还原扣除的库存

特点

TCC 机制优点:

  • 最终保证数据一致性,在业务层实现事务控制,灵活性好

TCC 机制缺点:

  • 开发成本高,每个事务操作每个参与者都需要实现 try/commit/cancel 三个接口

由于 try,confirm,cancel 三个阶段中失败后要不断重试,所以 TCC 的 try,confirm,cancel 的三个接口都要实现幂等性。

幂等性

幂等性是指同一个操作无论请求多少次,其结果都相同。

保证幂等性的方案如下:

1、操作前在业务系统进行判断如果执行过了就不再执行

2、缓存所有请求和处理的结果,已经处理的请求则直接返回结果

3、在数据库表中添加一个状态字段,数据操作时判断处理状态


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/31039.html

服务  库存  订单  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 全文缘来是你早注定良心(萧千雅胡一阳)列表_全文缘来是你早注定良心
  • 「爱让我溺毙而亡」小说节选推荐_[羽柔乔羽柔林絮]章节限时抢先看‌
  • 此去经年人未还霍沉洲沈青禾后续结局霍沉洲
  • 山海不相逢内容精选(温逸尘沈衿)_山海不相逢内容精选(温逸尘沈衿)
  • (番外)+(全书)霍沉洲沈青禾此去经年人未还(霍沉洲沈青禾)_(霍沉洲沈青禾此去经年人未还)列表_笔趣阁(霍沉洲沈青禾)
  • (番外)+(全书)霍沉洲沈青禾(此去经年人未还霍沉洲沈青禾)完结_(霍沉洲沈青禾)列表_笔趣阁(此去经年人未还霍沉洲沈青禾)
  • 「重回八零,拒绝替嫁冲喜」章节彩蛋限时释出‌_卫东玉兰苏夏人气小说未删减节选
  • 重生七零祁同伟不再是农民儿子结局+番外纯净版全书免费重生七零祁同伟不再是农民儿子结局+番外纯净版全书免费
  • 傅雅宁的神女老婆,却在背地承欢作乐顾尘傅雅宁全书在线
  • 全文神女老婆,却在背地承欢作乐全局(顾尘傅雅宁)列表_全文神女老婆,却在背地承欢作乐全局
  • (番外)+(全书)此去经年人未还全书+番外+后续免费下载_(沈青禾霍沉洲)此去经年人未还全书+番外+后续列表_笔趣阁(沈青禾霍沉洲)
  • 完结文毁容的姐姐和瞎眼的我离开后,姜家两兄弟悔哭了+后续列表_完结文毁容的姐姐和瞎眼的我离开后,姜家两兄弟悔哭了+后续(林梦婉)

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1