售前咨询 95187转1

全局事务服务

全局事务服务(Global Transaction Service ,简称 GTS )用于处理分布式环境下高性能事务一致性问题。可以与 DRDS、RDS、Oracle、MySQL、PostgreSQL、H2等数据源,EDAS、Dubbo及多种私有RPC框架,MQ消息队列等中间件产品配合使用,可以轻松实现分布式数据库事务、多库事务、消息事务、服务链路级事务及各种组合。策略丰富,易用性和性能兼顾。
  • 企业级互联网架构Aliware综述

产品概述

GTS是一款分布式事务中间件。 通过GTS,应用只需要极少的代码改造和配置,即可享受分布式事务带来的便利。

节省开发成本

  1. 节省开发成本
  2. 像使用单机事务一样使用分布式事务

节省运维成本

  1. 节省运维成本
  2. 避免了分布式场景下产生的数据异常

超强性能

  1. 超强性能
  2. 在某些业务场景下,可以达到传统分布式事务性能10倍左右;热点数据可以高效处理,无惧数据冲突

高可用

  1. 真正的高可用
  2. 任何异常情况下的数据严格一致

支持多种数据源

  1. 支持多种数据源: DRDS、RDS、oracle、mysql、PostgreSQL、H2等
  2. 支持RPC框架: EDAS、dubbo及多种私有RPC框架
  3. 支持消息队列: MQ
类似方案对比

事务方案对比

    方案

    优点

    缺点

    XA

    接口标准化

  • 阻塞协议,参与者占用一个公共资源,则其它事务访问公共资源只能阻塞,阻塞周期长,增加了并发冲突,影响到系统吞吐和可伸缩性;
  • 性能不理想,很难满足互联网大并发需求;
  • 事务协调器单点问题;
  • 缺乏容错机制,一个节点发生故障整个事务都要回滚,代价比较大;
  • 业务补偿 不依赖外部产品
  • 进程崩溃情况无法处理;
  • 要求每一个服务实现一个可逆的回滚服务,增加开发成本;
  • 要求服务提供回查接口,用户查询服务的执行状态,增加开发成本;
  • 消息 目前采用比较广泛
  • 要求应用与消息系统紧耦合,或需要实现业务状态回查,增加开发成本;
  • 要求业务实现幂等,增加开发成本;
  • 要求把容易失败的业务放到第一步执行,无法支持事务链路多于两个业务的场景;

产品功能

分布式事务主要解决的问题

数据库扩容产生的分布式事务

业务初始阶段往往规模比较小,大多情况下,单库就可以满足需求,经过一段时间后,业务规模也会随之变得大而复杂,会出现分库的情况,这时原有的单机事务往往会变成分布式事务。

跨资源操作

在某些业务场景中,需要进行多个DB操作的同时,还会调用消息系统,DB操作成功、消息发送失败或者反过来都会造成业务的不完整。

跨服务的分布式事务

业务完成服务化后,资源与客户端调用解耦,同时又要保证多个服务调用间资源的变化保持强一致,否则会造成业务数据的不完整。

服务化

EDAS事务解决方案

与EDAS打通,提供夸库、跨服务的分布式事务支持,实现业务链路级别的分布式事务。开发简单,只需要在客户端声明一个注解,用以界定事务边界。

分布式数据库事务

DRDS事务解决方案

提供标准的SQL语法,以极低的开发成本,为分布式数据库DRDS提供分布式事务能力,是企业从单机数据库迁移到分布式数据库的利器。

消息队列事务

MQ事务解决方案

与MQ打通,提供事务消息处理能力,业务链路完成时发送消息,任一阶段异常时回滚消息。开发简单,在客户端声明一个注解,用以界定事务边界,
调用MQ的事务API发送消息。

混合的分布式事务

完整分布式事务解决方案

以极简单的用户接口,实现跨服务(EDAS、dubbo)、跨数据库(DRDS、RDS、MySql)、跨消息(MQ)的通用分布式事务管理。

帮助与文档