• 锁?


    数据库通过锁机制来解决并发场景-共享锁(读锁)和排他锁(写锁)。读锁是不阻塞的,多个客户端可以在同一时刻读取同一个资源。写锁是排他的,并且会阻塞其他的读锁和写锁。简单提下乐观锁和悲观锁。

    • 乐观锁,通常用于数据竞争不激烈的场景,多读少写,通过版本号和时间戳实现。

    • 悲观锁,通常用于数据竞争激烈的场景,每次操作都会锁定数据。

    要锁定数据需要一定的锁策略来配合。

    • 表锁,锁定整张表,开销最小,但是会加剧锁竞争。

    • 行锁,锁定行级别,开销最大,但是可以最大程度的支持并发。

    但是MySql的存储引擎的真实实现不是简单的行级锁,一般都是实现了多版本并发控制(MVCC)。MVCC是行级锁的变种,多数情况下避免了加锁操作,开销更低。MVCC是通过保存数据的某个时间点快照实现的。

  • 相关阅读:
    jq insertBefore 的返回值
    微信公众号-定位之地址逆解析&导航
    微信JS-SDK
    Vue
    ES6-函数的扩展
    ES6-数组的扩展
    JSP
    JS
    HTML+CSS
    jdbc操作数据库
  • 原文地址:https://www.cnblogs.com/programb/p/14089679.html
Copyright © 2020-2023  润新知