Login
升级VIP 登录 注册 安全退出
当前位置: 首页 > PPT模板 > 其他PPT > 阿里云GTS-分布式事务解决方案

阿里云GTS-分布式事务解决方案

收藏

阿里云GTS-分布式事务解决方案

阿里云GTS-分布式事务解决方案

阿里云GTS-分布式事务解决方案

阿里云GTS-分布式事务解决方案

阿里云GTS-分布式事务解决方案

GTS-分布式事务全新解决方案功能架构典型场景实践操作产品简介GTS是一款分布式事务中间件,是一站式的分布式事务解决方案。产品简介-GTS是什么跨库事务服务化事务消息事务混合事务•阻塞协议,影响系统吞吐和可伸缩性•性能不理想,很难满足互联网大并发需求•缺乏容错机制•实现复杂,各种异常情况难于处理•要求每个方案实现一个反向的回滚接口•运维成本高,扩现移植性不理想•要求应用与消息系统紧耦合,增加开发成本•要求业务实现幂等•最终一致性,适用场景受限XA方案接口标准化补偿方案符合业务需求消息方案实现相对简单产品简介-GTS与其他解决方案对比产品简介-GTS与其他解决方案对比GTS资源1资源2资源n…资源层应用系统2应用系统n…应用层应用系统1产品简介-GTS优势可以解决分布式数据库、跨数据库、服务化、消息系统场景下的分布式事务问题一行注解即可实现事务接入,也提供API接入模式使用门槛低,节省开发和运维成本高达传统分布式事务10倍性能,4c8g集群可达1.5万TPS。热点数据高效处理,无惧数据冲突支持应用宕机、节点故障等各类异常情况下均可保持数据严格一致,支持同城主备及两地三中心部署。产品简介-产品历史2015-12发布2.02017-02阿里云公测2018-05正式商用产品简介-GTS商用5月21日正式商业,首发1月内购买,低至七折GTS实例规格分为5TPS(免费版)、20TPS、100TPS、200TPS、500TPS、2000TPS和5000TPS。功能架构-GTS事务模型全局事务分支事务1分支事务2分支事务3………分支事务nxidbranchid功能架构-事务协议RMRMRMRMRMGTSServerClusterxidBeginTXxidGlobalcommit/rollbackRegisterbranchwithxidbranchidReportbranchstatusBranchcommit/rollback功能架构-容错机制(服务节点宕机)RMS3S1S2RMRMGlobalTransactionAPP1APP2APP31.Failed2.Globalrollback3.Rollback4.Rollback功能架构-容错机制(应用节点宕机)APP1RMAPP1RMAPP1RMDB1APP2RMAPP2RMAPP2RMDB2GTS功能架构-扩展机制S3S1S2AppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppApp功能架构-扩展机制S3S1S2AppAppAppAppAppAppS3S1S2S3S1S2AppAppAppAppAppAppAppAppAppAppAppApp功能架构-AT&MTAT自动模式MT手动模式两种模式完全兼容,可以组合使用强一致高效无侵入支持广泛业务层自己维护事务TCC模式的支持非事务性资源上的事务应用场景-解决跨数据库的事务问题应用场景-解决微服务调用的事务问题应用场景-解决多系统集成的事务问题应用场景-解决混合事务问题DRDSMQEDAS应用案例1.车况检查物联网系统运维平台2.生成订单信息订单系统3.状态变更车辆系统4.推送订单信息MQ(流分析平台、显示大屏)5.锁车物联网系统运维平台6.结束订单订单系统7.推送订单信息MQ(流分析平台、显示大屏)8.获取优惠信息优惠系统9.扣款支付系统实践操作-AT模式@TxcTransaction(timeout=600003)publicvoidtransfer(intmoney)throwsException{//A账户从db1减钱jdbcTemplate1.update("updateuser_money_asetmoney=money-?",money);//B账户从db2加钱setmoney=money+?",money);jdbcTemplate2.update("updateuser_money_b//余额不足时抛异常,GTS会回滚前两次操作intmoney_a=getMoney(jdbcTemplate1,"user_money_a");if(money_a<0){thrownewRuntimeException("Balanceisnotenough.");}}实践操作-AT模式EDAS客户端@TxcTransaction(appName="myapp2")publicvoidmoneyChange(intmoney)throwsSQLException{//测试先加后减incMoneyService.incMoney(money);decMoneyService.decMoney(money);}实践操作-AT模式EDAS服务端publicintincMoney(intmoney)throwsSQLException{if(getMoney()==-1){return-1;}Statementstatement=connection.createStatement();StringBuildersb=newStringBuilder();sb.append("updateuser_money_incsetmoney=money+").append(money);statement.execute(sb.toString());statement=connection.createStatement();ResultSetresultSet=statement.executeQuery("selectfromuser_money_inc");if(resultSet.next()){money=resultSet.getInt("money");实践操作-AT模式EDAS配置文件实践操作-MT模式@TxcTransaction(timeout=60000)publicvoidrunBussiness(intid,intmoney,MtServiceRollinmtServiceRollin,MtServiceRolloutmtServiceRollout){mtServiceRollout.rollout(null,0,id,money);mtServiceRollin.rollin(null,0,id,money);}publicinterfaceMtServiceRollout{@MtBranch(name="app1.reserve.rollout",commitMethod="commitRollout",rollbackMethod="rollbackRollout")publicvoidrollout(StringtxId,longbranchId,


  • 编号:1701026594
  • 分类:其他PPT
  • 软件: wps,office Excel
  • 大小:28页
  • 格式:xlsx
  • 风格:其他
  • PPT页数:1712266 KB
  • 标签:

广告位推荐

相关其他PPT更多>