zoukankan      html  css  js  c++  java
  • python中的事务

    1. 为什么要有事务

    事务广泛的运用于订单系统、银行系统等多种场景

    例如:

    A用户和B用户是银行的储户,现在A要给B转账500元,那么需要做以下几件事:

    1. 检查A的账户余额>500元;
    2. A 账户中扣除500元;
    3. B 账户中增加500元;

    正常的流程走下来,A账户扣了500,B账户加了500,皆大欢喜。

    那如果A账户扣了钱之后,系统出故障了呢?A白白损失了500,而B也没有收到本该属于他的500。

    以上的案例中,隐藏着一个前提条件:A扣钱和B加钱,要么同时成功,要么同时失败。事务的需求就在于此

    所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位

    例如,银行转帐工作:从一个帐号扣款并使另一个帐号增款,这两个操作要么都执行,要么都不执行。所以,应该把他们看成一个事务。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。

    事务四大特性(简称ACID)

    • 原子性(Atomicity)
    • 一致性(Consistency)
    • 隔离性(Isolation)
    • 持久性(Durability)

      

  • 相关阅读:
    JavaScript实现常见排序算法
    执行环境与作用域
    几种常见的三列布局,中间自适应,两边定宽
    常见的两列布局
    CodeAtlas For Sublime Text
    增加调用路径查找
    增加调用被调用个数隐喻
    sublime 插件
    分析大工程
    Jmeter 分布式测试
  • 原文地址:https://www.cnblogs.com/shenge1106/p/9303375.html
Copyright © 2011-2022 走看看