zoukankan      html  css  js  c++  java
  • 悲观锁和乐观锁详解

    公众号里有篇文章讲悲观锁和乐观锁小白科普:悲观锁和乐观锁,非常通俗易懂,在这里总结下自己的理解。

     

    悲观锁:每次读写的时候讲数据加锁,不让别人访问,直到自己用完后释放。

        缺点:是如果持有锁的时间太长,其他用户需要等待很长时间。

    乐观锁:加一个版本(version)字段,每次讲版本读出,修改数据的时候对比下版本号是否一样。如果不一样放弃这次操作,重新读取再操作。

        缺点:这种方式适合于冲突不多的场景,如果冲突很多,数据争用激烈,会导致不断地尝试,反而降低了性能,尤其是在高并发情况下大家都疯狂争抢,效率会很低。

    简单来说悲观锁阻止读取,乐观锁阻止提交。

  • 相关阅读:
    Nginx配置文件详解
    Mycat概述
    日志切割之Logrotate
    js数组(二)
    js数组(一)
    sass颜色
    scss
    HTML5新属性
    HTML5新元素
    Bootstrap
  • 原文地址:https://www.cnblogs.com/bigbrid/p/7798751.html
Copyright © 2011-2022 走看看