• 数据库事务级别


    事务四个特性ACID

    Atomicity 原子性

    Consistency 一致性

    Isolation 隔离性

    Durability 持久性

    数据库在高并发下会产生三个问题, 有并发事务A,B

    脏读: A读取了B未提交的数据,

    不可重复读:A第一次查询数据,B更新数据并提交,A第二次查询,读出B更新后的数据,导致两次查询不一致

    幻读:A查询数据库,B新增或删除数据,A第二次查询数据不一致

    为解决这三个问题,数据库设置四个隔离级别

    READ_UNCOMMITED: 允许脏读,不可重复读,幻读

    READ_COMMITED:不允许脏读

    REPEATABLE_READ:不允许脏读,不可重复读

    SERIALIZABLE:都不允许

    Spring  七种事务传播属性

    PROPAGATION_REQUIRED :没有事务就新建,有就加入到当前事务中

    PROPAGATION_NEW:没有事务就新建,有事务挂起当前事务,新开一个事务。如果methodA调用methodB,B查到A中事务,挂起A事务,新开另一事务,A,B此时是独立的两个事务,即B提交后A回滚也不会影响B。

    PROPAGATION_SUPPORT :有事务就以事务方式运行,没有事务就以非事务方式运行。

    PROPAGATION_NOT_SUPPORT:没有事务就以非事务方式运行,有事务就挂起当前事务,以非事务方式运行。

    PROPAGATION_MANDATORY:有事务加入当前事务,没有事务抛出异常

    PROPAGATION_NEVER :有事务抛出异常,没有事务正常运行。

    PROPAGATION_NEST:没有事务就新建,有事务就嵌套一个事务,如果methodA调用methodB,A中有事务,B中回滚不会影响A,A方法继续执行,如果A回滚会连带B一起回滚。即外层事务失败时,会回滚内层事务所做的动作。而内层事务操作失败并不会引起外层事务的回滚

  • 相关阅读:
    leetcode312 戳气球
    leetcode1283 使结果不超过阈值的最小除数
    软件管理相关命令
    win10+Tensorflow2.1+anaconda python3.7安装
    ResNet残差网络(可以解决梯度消失)
    梯度消失&梯度爆炸(Vanishing/exploding gradients)
    高方差和高偏差
    tf.nn.conv1d
    tensorboard
    卷积
  • 原文地址:https://www.cnblogs.com/tangyuanyuan/p/7825420.html
Copyright © 2020-2023  润新知