Seata:连接数据与应用

本文主要介绍分布式事务从内部到商业化和开源的演进历程,Seata 社区当前进展和未来规划。

Seata 是一款开源的分布式事务解决方案,旨在为现代化微服务架构下的分布式事务提供解决方案。Seata 提供了完整的分布式事务解决方案,包括 AT、TCC、Saga 和 XA 事务模式,可支持多种编程语言和数据存储方案。Seata 还提供了简便易用的 API,以及丰富的文档和示例,方便企业在应用 Seata 时进行快速开发和部署。

Seata 的优势在于具有高可用性、高性能、高扩展性等特点,同时在进行横向扩展时也无需做额外的复杂操作。目前 Seata 已在阿里云上几千家客户业务系统中使用,其可靠性得到了业内各大厂商的认可和应用。

作为一个开源项目,Seata 的社区也在不断扩大,现已成为开发者交流、分享和学习的重要平台,也得到了越来越多企业的支持和关注。

今天我主要针对以下三个小议题对 Seata 进行分享:

  • 从 TXC/GTS 到 Seata
  • Seata 社区最新进展
  • Seata 社区未来规划

从 TXC/GTS 到 Seata

分布式事务的缘起

Seata 在阿里内部的产品代号叫 TXC(taobao transaction constructor),这个名字有非常浓厚的组织架构色彩。TXC 起源于阿里五彩石项目,五彩石是上古神话中女娲补天所用的石子,项目名喻意为打破关键技术壁垒,象征着阿里在从单体架构向分布式架构的演进过程中的重要里程碑。在这个项目的过程中演进出一批划时代的互联网中间件,包括我们常说的三大件:

  • HSF 服务调用框架,解决单体应用到服务化后的服务通信调用问题。
  • TDDL 分库分表框架,解决规模化后单库存储容量和连接数问题。
  • MetaQ 消息框架,解决异步调用问题。

三大件的诞生满足了微服务化业务开发的基本需求,但是微服务化后的数据一致性问题并未得到妥善解决,缺少统一的解决方案。应用微服务化后出现数据一致性问题概率远大于单体应用,从进程内调用到网络调用这种复杂的环境加剧了异常场景的产生,服务跳数的增多使得在出现业务处理异常时无法协同上下游服务同时进行数据回滚。TXC 的诞生正是为了解决应用架构层数据一致性的痛点问题,TXC 核心要解决的数据一致性场景包括:

  • 跨服务的一致性。应对系统异常如调用超时和业务异常时协调上下游服务节点回滚。
  • 分库分表的数据一致性。应对业务层逻辑 SQL 操作的数据在不同数据分片上,保证其分库分表操作的内部事务。
  • 消息发送的数据一致性。应对数据操作和消息发送成功的不一致性问题。

为了克服以上通用场景遇到的问题,TXC 与三大件做了无缝集成。业务使用三大件开发时,完全感知不到背后 TXC 的存在,业务不需要考虑数据一致性的设计问题,数据一致

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值