事务:本地事务、分布式事务相关概念简介

事务:直白的说就是一系列操作在外界看来就是一件事(只有两种状态:做好了/没做,不与其他事有瓜葛)。其特性ACID分别是:原子性、一致性、隔离性、持久性。

原子性:一系列操作不可分割,要么全做完,要么全部不做。

一致性:本地事务的一致性与分布式事务的一致性存在一定差异,对于本地事务的一致性一般的解释是满足数据完整性约束(这些与我们的业务有关,例如数据库的级联删除,在事务中我们应该保证我们该做的事都做了,而不是在事务之外去执行与该事物相关的数据操作),对此我还是有些困惑。

隔离性:事务之间的隔离性,避免交叉事务造成数据的不一致性(分布式事务的一致性与此有点类似,但是造成不一致的原因不同)。例如a事件、b事件都对数据d进行操作,a查询d得知d=100,然后b查询d得知d=100,a改变d=d+100,b改变d=d+200,我们的预期是d=100+100+200=400,然而由于并发,如果a事件与b事件交叉执行的话,结果可能是200、300、400。并发导致的问题有:脏读、不可重复读、幻读。mysql对于隔离级别分为多种:读未提交、读提交、重复读、序列化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值