从2016年年中开始,在阿里内部一直接受锤炼的分布式事务中间件TXC在2.0版本后,随着阿里中间件上云热潮,开始通过专有云输出,并得到了市场极大认可,适用场景得到进一步拓展,全面涵盖电商、物流、金融、零售、政企、游戏、文娱等领域。2017年2月,TXC 2.0通过阿里云对外公测,外部改名为全局事务服务(Global Transaction Service,简称GTS)。 GTS总体架构图 在整体架构方面,GTS由三个组件组成:客户端(GTS-Client),资源管理器(RM),事务协调器(GTS-Server)。客户端与事务协调器间,资源管理器与事务协调器间都是通过GTS分布式事务协议进行通信。客户端负责界定事务边界,开启/提交/回滚全局事务,资源管理器负责管理资源,支持的资源包括:DRDS,Oracle,MySQL,RDS,PostgreSQL,H2,MQ,后续计划根据实际业务需求支持更多类型资源。事务协调器,也就是GTS服务器,是分布式事务处理的大脑,负责协调整个事务过程。GTS事务通过RPC框架和消息中间件进行事务传递,把整个业务调用链路或者消息链路串成一个分布式事务,极大简化应用开发。 在高可用方面,GTS支持同城容灾与两地三中心容灾,可保证各种异常情况下的数据一致。在易用性方面,GTS对业务无侵入,真正做到业务与事务分离,开发者可以集中精力于业务本身。在技术创新方面,GTS也走在了行业前沿。项目负责人阿里高级技术专家姜宇(花名于皋)拥有13项分布式事务的核心技术专利,研发团队的技术专家张松树也有3篇专利。通过大量的专利技术,精妙的算法,与精巧的分布式事务私有协议,GTS取得了超强的性能。 另外,在部分严苛的行业应用场景,比如金融用户的资管项目分布式事务场景下,GTS也经历了严格的测试,按照用户要求顺利完成功能性、稳定性和性能测试。下图是一个典型性能测试场景数据,从实测数据可以看出,开启GTS(TXC)分布式事务后性能下降不明显。目前GTS已经在资金业务上有实际应用,线上大量真实数据验证了GTS的高效可靠。 GTS典型性能测试场景数据 性能优异,业务场景广泛 作为新一代企业级分布式事务服务产品,全局事务服务GTS兼顾了事务一致性,高性能与易用性。在满足事务ACID的前提下,普通配置的单服务器就可以达到15000TPS以上的超强性能(两个小时内完成1亿多笔业务),3台8核16G内存虚机组成的服务器集群可以支撑1万TPS以上的分布式事务,与同类产品相比,性能优势明显。另外简单易用对业务无侵入,为广大企业大幅降低开发成本,业务场景非常广泛: 1、跨多分库的分布式数据库事务场景:关系型数据库普遍支持事务,开奖,能够满足事务内的SQL要么全部成功、要么全部失败。但客户从单机数据库往分布式数据库迁移的情况下,原有的一个事务往往会被拆分为多个分库上的事务。由于网络的不可靠性,容易出现部分分库上成功,部分分库上失败的情况。GTS结合DRDS可彻底解决了这一问题。 2、跨多数据库的事务场景:复杂的业务系统经常会使用多个数据库,甚至多种类型的数据库,比如企业中Oracle,MySQL和其他关系型数据库并存的情况时有发生。业务同时操作多个数据库的情况下,一旦发生先提交的事务成功、后提交的事务失败,就很难解决。GTS支持各种常见关系型数据库,并提供多数据库间的事务保证。 (责任编辑:本港台直播) |