阿里云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功能架构-容错机制(服务节点宕机)RMS3S1S2RMRMGlobalTransactionAPP1APP2APP31.Failed2.Globalrollback3.Rollback4.Rollback功能架构-容错机制(应用节点宕机)APP1RMAPP1RMAPP1RMDB1APP2RMAPP2RMAPP2RMDB2GTS功能架构-扩展机制S3S1S2AppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppApp功能架构-扩展机制S3S1S2AppAppAppAppAppAppS3S1S2S3S1S2AppAppAppAppAppAppAppAppAppAppAppApp功能架构-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配置文件
提供阿里云GTS-分布式事务解决方案会员下载,编号:1701026594,格式为 xlsx,文件大小为28页,请使用软件:wps,office Excel 进行编辑,PPT模板中文字,图片,动画效果均可修改,PPT模板下载后图片无水印,更多精品PPT素材下载尽在某某PPT网。所有作品均是用户自行上传分享并拥有版权或使用权,仅供网友学习交流,未经上传用户书面授权,请勿作他用。若您的权利被侵害,请联系963098962@qq.com进行删除处理。