蚂蚁金服分布式事务开源以及实践 | SOFA 开源一周年献礼
上周,分布式事务 Fescar 宣布进行品牌升级为 Seata,蚂蚁金服在 Seata 0.4.0 版本加入了 TCC 模式,后续也会持续输入。本文根据 SOFAMeetup 北京站现场分享整理详细,讲述了分布式事务在蚂蚁金服的发展以及开源版本的规划,希望可以帮助大家理解。
解密阿里中间件女程序员以夕、钰佩代码诗!
2018年已过,我们迎来了新的一年,在机遇与挑战同在的环境下,我们更应勤于学习。为了方便大家学习,小编为大家盘点了2018年中间件云栖号最火的干货文章分享给大家,让我们在新的一年里共同学习和成长!
阿里中间件团队
云栖号简介:
中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。
分布式事务中间件 Fescar - 全局写排它锁解读
前言
一般,数据库事务的隔离级别会被设置成 读已提交,已满足业务需求,这样对应在Fescar中的分支(本地)事务的隔离级别就是 读已提交,那么Fescar中对于全局事务的隔离级别又是什么呢?如果认真阅读了 分布式事务中间件Txc/Fescar-RM模块源码解读 的同学应该能推断出来:Fescar将全局事务的默认隔离定义成读未提交。
微服务架构下,解决数据一致性问题的实践
随着业务的快速发展,应用单体架构暴露出代码可维护性差、容错率低、测试难度大和敏捷交付能力差等诸多问题,微服务应运而生。微服务的诞生一方面解决了上述问题,但是另一方面却引入新的问题,其中主要问题之一就是:如何保证微服务间的业务数据一致性。
Fescar 全局锁介绍
开篇
这篇文章的目的主要是讲解TC的在处理分支事务注册过程中对全局锁的处理流程,理解了全局锁以后才能明白对DB同一个记录进行多次变更是如何解决的。
如上图所示,问最终全局事务A对资源R1应该回滚到哪种状态?很明显,如果再根据UndoLog去做回滚,就会发生严重问题:覆盖了全局事务B对资源R1的变更。