基于Seata探寻分布式事务的实现方案
随着业务的快速发展、业务复杂度越来越高,几乎每个公司的系统都会从单体走向分布式,特别是转向微服务架构。随之而来就必然遇到分布式事务这个难题,这篇文章通过seata框架总结了分布式事务的几种解决方案。
Chase620 Chase620
4年前
Promise从入门到拿Offer之手写Promise
1、Promise构造函数的实现Promise构造函数用来声明示例对象,需要传入一个执行器函数。其中包括resolve函数和reject函数,以及几个重要的属性:状态属性、结果属性和回调函数队列。构造函数的基本框架resolve函数用于异步处理成功后调用的函数。其中包括验证对象状态修改次数,修改promise实例对象状态,异步调用成功的回调函数
Stella981 Stella981
4年前
12306 抢票系列之只要搞定RAIL_DEVICEID的来源,从此抢票不再掉线(中)
直奔重点高楼大厦寻关键线索Js文件中关于网络请求最典型的就是异步回调,将原本简单的操作复杂化,非要你等我,我等他,他还等着他的她.最终直接结果就是整个请求流程反过来了,假设正常流程:是ABCDEF,那么异步请求很可能陷入这样的陷阱:F<E<D<C<B<A所以一层又一层的回调函数
Easter79 Easter79
4年前
Spring的事务传播行为
先举一个Spring的嵌套例子ServiceA {    void methodA() {        ServiceB.methodB();    }}ServiceB {    void methodB();}事务传播属性可以在@Trans
Wesley13 Wesley13
4年前
分布式事务 TCC
摘要:原创出处http://www.iocoder.cn/TCCTransaction/builddebuggingenvironment/(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.iocoder.cn%2FTCCTransaction%2Fbuilddebu
可莉 可莉
4年前
12306 抢票系列之只要搞定RAIL_DEVICEID的来源,从此抢票不再掉线(中)
直奔重点高楼大厦寻关键线索Js文件中关于网络请求最典型的就是异步回调,将原本简单的操作复杂化,非要你等我,我等他,他还等着他的她.最终直接结果就是整个请求流程反过来了,假设正常流程:是ABCDEF,那么异步请求很可能陷入这样的陷阱:F<E<D<C<B<A所以一层又一层的回调函数
Wesley13 Wesley13
4年前
MySQL隔离级别
事务具有ACID四种特性。但是Isolation并发可能引起如下问题:1.脏读允许读取到未提交的脏数据。2.不可重复读如果你在时间点T1读取了一些记录,在T2时再想重新读取一次同样的这些记录时,这些记录可能已经被改变、或者消失不见。3.幻读解决了不重复读,保证了同一个事务里,查询的结果都是事务开始时的状态(
Wesley13 Wesley13
4年前
Mysql读写锁及事务
读写锁同一用户并发读取同一条数据,不会出现什么问题,因为读取不会修改数据,但是如果某个用户正在读取某张表,而同一时刻另一用户正在修改这张表的id为1的数据,会产生什么后果?答案是不确定的,读的用户可能会报错退出,也可能读到不一致的数据。 解决这类经典问题的就是并发控制。在处理并发读写的时候,可以通过实现一个由两种类型的锁组成锁系统来解决问题。
Wesley13 Wesley13
4年前
DRDS 柔性事务漫谈
_摘要:_ 在阿里巴巴,“柔性事务”已经是重构分布式事务的标准方法,覆盖了商品、交易、支付各个大规模应用场景,并且经受了双十一的考验。DRDS 是阿里云提供的一款分布式数据库产品,它的原型是在阿里内部使用了10年的数据库中间件TDDL。DRDS在TDDL提供的数据切分和SQL路由能力上,强化了分布式查询,事务和水平扩容能力。