当前位置: 首页 > news >正文

可以做宣传图的网站全球招商网加盟网

可以做宣传图的网站,全球招商网加盟网,上海报纸,行业网站排名查询分布式事务产生的原因#xff1a; 数据库分库分表 应用的SOA化。就是业务的服务化(面向服务架构) 分布式事务的解决方案#xff1a; 1、两阶段提交协议2PC 这里的两阶段提交和redolog binlog的两阶段提交不是一个东西#xff0c;redo log和bin log的两阶段提交保证的是…分布式事务产生的原因 数据库分库分表 应用的SOA化。就是业务的服务化(面向服务架构) 分布式事务的解决方案 1、两阶段提交协议2PC 这里的两阶段提交和redolog binlog的两阶段提交不是一个东西redo log和bin log的两阶段提交保证的是什么 第一阶段表决阶段所有的参与者本地资源管理器都将本事务能否成功的信息反馈给协调者(事务协调器) 第二阶段执行阶段协调者根据所有参与者的反馈通知所有的参与者步调一致地在所有分支上提交或者回滚 这里衍生出两个角色协调者和参与者 2、补偿事务方案TCC 两阶段提交的一种改进TCC方案在点商和金融领域使用较多。其将整个业务的每个分支显式的分成try、confirm、cancel三个操作。Try操作完成业务的准备工作Confirm操作完成业务的提交Cancel操作完成事务的回滚。 3、Seata分布式事务框架 经过阿里双11的检测。 Seata三大模块TM RM TC。 TC (Transaction Coordinator) - 事务协调者 维护全局和分支事务的状态驱动全局事务提交或回滚。 TM (Transaction Manager) - 事务管理器 定义全局事务的范围开始全局事务、提交或回滚全局事务。 RM (Resource Manager) - 资源管理器 管理分支事务处理的资源与TC交谈以注册分支事务和报告分支事务的状态并驱动分支事务提交或回滚。 AT模式(重点需要了解AT模式目前使用的最多) AT模式是一种无侵入的分布式事务解决方案。在AT模式下用户只需要关注自己的业务sql用户的业务sql作为一阶段Seata框架会自动生成事务的二阶段提交和回滚操作。 AT模式一阶段 在一阶段Seata会拦截业务sql首先解析sql语义找到业务sql要更新的业务数据在业务数据被更新前将其保存成before image然后执行业务sql更新业务数据在业务数据更新之后再将其保存成after image最后生成行锁。 AT模式二阶段 二阶段要么提交要么回滚。 提交: 二阶段如果是提交的话因为“业务 SQL”在一阶段已经提交至数据库 所以 Seata 框架只需将一阶段保存的快照数据和行锁删掉完成数据清理即可。 回滚 二阶段如果是回滚的话Seata就需要回滚一阶段已经执行的业务sql所以直接使用before image回滚但是回滚前还需要做一次校验对比当前数据库的业务数据和after image是不是完全一致如果是就说明没有脏写可以还原业务数据。如果不一致人工处理。 after image vs 数据库数据 —》还原数据 --》删除中间数据 TCC模式 2019 年 3 月份Seata 开源了 TCC 模式该模式由蚂蚁金服贡献。TCC 模式需要用户根据自己的业务场景实现 Try、Confirm 和 Cancel 三个操作事务发起方在一阶段执行 Try 方式在二阶段提交执行 Confirm 方法二阶段回滚执行 Cancel 方法。 TCC 三个方法描述 Try资源的检测和预留Confirm执行的业务操作提交要求 Try 成功 Confirm 一定要能成功Cancel预留资源释放 以“扣钱”场景为例在接入 TCC 前对 A 账户的扣钱只需一条更新账户余额的 SQL 便能完成但是在接入 TCC 之后用户就需要考虑如何将原来一步就能完成的扣钱操作拆成两阶段实现成三个方法并且保证一阶段 Try 成功的话 二阶段 Confirm 一定能成功。 如上图所示 Try 方法作为一阶段准备方法需要做资源的检查和预留。在扣钱场景下Try 要做的事情是就是检查账户余额是否充足预留转账资金预留的方式就是冻结 A 账户的 转账资金。Try 方法执行之后账号 A 余额虽然还是 100但是其中 30 元已经被冻结了不能被其他事务使用。 二阶段 Confirm 方法执行真正的扣钱操作。Confirm 会使用 Try 阶段冻结的资金执行账号扣款。Confirm 方法执行之后账号 A 在一阶段中冻结的 30 元已经被扣除账号 A 余额变成 70 元 。 如果二阶段是回滚的话就需要在 Cancel 方法内释放一阶段 Try 冻结的 30 元使账号 A 的回到初始状态100 元全部可用。 用户接入 TCC 模式最重要的事情就是考虑如何将业务模型拆成 2 阶段实现成 TCC 的 3 个方法并且保证 Try 成功 Confirm 一定能成功。相对于 AT 模式TCC 模式对业务代码有一定的侵入性但是 TCC 模式无 AT 模式的全局行锁TCC 性能会比 AT 模式高很多。
http://wiki.neutronadmin.com/news/391087/

相关文章:

  • 个人建设网站建筑网上接活平台
  • 郴州公司网站建设制作动画的网站
  • 商务贸易网站建设展示形网站开发
  • 做昆虫类论文网站平顶山建设网站
  • 西安建设科技专修学院网站不同网站对商家做o2o的政策
  • linux系统网站架构开源众包官网兼职平台
  • 做网站建设科技公司东方甄选采用了哪些网络营销方式
  • 现代网站制作wordpress的知名网站
  • 建设银行官网站下载免费素材网站pexels
  • 做网站哪家服务器好自助免费建站系统
  • c2c网站支付方式河南建设工程教育网
  • 怎么在百度上面做网站seo优化对网店的推广的作用为
  • 一个成功的网站必须具备百度关键词挖掘工具
  • 网站建设设计制作培训网站建设教程视频西瓜
  • 黄村网站开发公司一流的学校网站建设
  • 临淄网站制作首选专家搜索引擎seo如何优化
  • 网站个人备案流程北京市住房和城乡建设网官网
  • 昆明网站建设SEO公司网上贸易平台有哪些
  • 知名外贸网站建设公司公司注销查询系统
  • 拖拽式网站建设费用河源网站开发
  • 建筑工程类网站永久免费国外php空间
  • 一六八互联网站建设广西建设执业资格注册中心
  • 网站建设明确细节怎么用wordpress做搜索网站
  • 淮北网站网站建设网站的 营销渠道的建设
  • 禅城区响应式网站vue框架 wordpress
  • 做邮箱网站邢台如何做企业网站
  • 做服装到哪个网站拿货品质好网站目录管理模板
  • 昆山建设局网站首页刚刚深圳出的大事
  • 网站开发教科书中山企业做网站
  • 网站的功能目标网站建设备案费用