美文网首页
事务的理解

事务的理解

作者: 牵小马过河 | 来源:发表于2018-07-19 11:38 被阅读0次

mysql事务理解

事务是指对系统进行的一组操作,为了保证系统的完整性,事务需要具有ACID特性,具体如下:

1. 原子性(Atomic)

     一个事务包含多个操作,这些操作要么全部执行,要么全都不执行。

2. 一致性(Consistency)

     一致性是指事务使得系统从一个一致的状态转换到另一个一致状态。事务的一致性决定了一个系统设计和实现的复杂度。事务可以不同程度的一致性:

     强一致性:读操作可以立即读到提交的更新操作。

     弱一致性:提交的更新操作,不一定立即会被读操作读到,此种情况会存在一个不一致窗口,指的是读操作可以读到最新值的一段时间。

3. 隔离性(Isolation)

     并发事务之间互相影响的程度,比如一个事务会不会读取到另一个未提交的事务修改的数据。

4. 持久性(Durability)

     事务提交后,对系统的影响是永久的。

对于一致性的理解,要结合原子性和隔离性来看:

1、原子性和一致性的的侧重点不同:原子性关注状态,要么全部成功,要么全部失败,不存在部分成功的状态。而一致性关注数据的可见性,中间状态的数据对外部不可见,只有最初状态和最终状态的数据对外可见。

2、在未提交读的隔离级别下,会造成脏读,这就是因为一个事务读到了另一个事务操作内部的数据。ACID中是的一致性描述的是一个最理想的事务应该怎样的,是一个强一致性状态,如果要做到这点,需要使用排它锁把事务排成一队,即Serializable的隔离级别,这样性能就大大降低了。现实是骨感的,所以使用隔离性的不同隔离级别来破坏一致性,来获取更好的性能。

相关文章

  • 事务的理解

    mysql事务理解 事务是指对系统进行的一组操作,为了保证系统的完整性,事务需要具有ACID特性,具体如下: 1....

  • 事务的理解

    什么是事务 事务是数据库中产生的一个概念,是为了确保多步操作“同时进行”。常常我们在对数据库数据进行修改的时候是多...

  • 事务的理解

    一、事务 什么是事务?事务就是一系列对数据库操作的语句集合,它是对数据库操作的最小逻辑单元,在数据库中,事务主要是...

  • 事务理解

    问:事务的隔离性和隔离级别有什么关系? 在jdbc中,事务只针对每一个connect连接,而不是说整个库,我可以针...

  • 事务理解

    事务(Transaction)是由一系列对系统中数据进行访问或更新的操作所组成的一个程序执行逻辑单元(Unit)。...

  • redis系列(十):事务

    redis有事务么? redis官方说是有事务的。但这个事务不是我们普遍理解的mysql事务。 redis的事务不...

  • 对事务的理解

    对事务的理解 我的理解就是:事务就是做一件事前要么做完要么不要在做了,比如我要给角色授权限,我给角色表里面添加很多...

  • spring 事务理解

    1.事务的概念 通俗的讲,事务指的是一组业务操作ABCD,要么全部成功,要么全部不成功。 2.关系数据库的事务的特...

  • 事务之又理解

  • Mysql事务理解

    为什么要有事务事务广泛的运用于订单系统、银行系统等多种场景 例如: A用户和B用户是银行的储户,现在A要给B转账5...

网友评论

      本文标题:事务的理解

      本文链接:https://www.haomeiwen.com/subject/xeaapftx.html