分布式事务-阿里Fescar

分布式事务-阿里Fescar

转载声明:

本文大量内容系转载自以下文章,有删改,并参考其他文档资料加入了一些内容:

  • 来了!阿里开源分布式事务解决方案 Fescar
  • 作者:阿里技术
  • 出处:今日头条
    转载仅为方便学习查看,一切权利属于原作者,本人只是做了整理和排版,如果带来不便请联系我删除。

摘要

阿里妹导读:广为人知的阿里分布式事务解决方案:GTS(Global Transaction Service),已正式推出开源版本,取名为Fescar,希望帮助业界解决微服务架构下的分布式事务问题,今天我们一起来深入了解。

微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,系统微服务化后,一个看似简单的功能,内部可能需要调用多个服务并操作多个数据库实现,服务调用的分布式事务问题变的非常突出。分布式事务已经成为微服务落地最大的阻碍,也是最具挑战性的一个技术难题。

0x01 什么是微服务化带来的分布式事务问题?

首先,设想一个传统的单体应用(Monolithic App),通过 3 个 Module,在同一个数据源上更新数据来完成一项业务。很自然的,整个业务过程的数据一致性由本地事务来保证:
分布式事务-阿里Fescar_第1张图片
随着业务需求和架构的变化,单体应用被拆分为微服务:原来的 3 个 Module 被拆分为 3 个独立的服务,分别使用独立的数据源(Pattern: Database per service)。业务过程将由 3 个服务的调用来完成。

此时,每一个服务内部的数据一致性仍有本地事务来保证。而整个业务层面的全局数据一致性要如何保障呢?这就是微服务架构下面临的,典型的分布式事务需求:我们需要一个分布式事务的解决方案保障业务全局的数据一致性。

来了!阿里开源分布式事务解决方案 Fescar

你可能感兴趣的:(分布式)