如果说在 TiDB 3.0 中,悲观锁是 “千呼万唤始出来,犹抱琵琶半遮面”。那么在 TiDB 4.0 中,悲观锁在经历了市场与时光的考验后,无论是性能还是稳定性都能够 “轻拢慢撚抹复挑,初为《霓裳》后《六幺》”。TiDB 4.0 悲观锁,欢迎大家尝鲜与反馈。本文将从使用者的角度,介绍悲观锁的使用与注意事项,主要分为以下几方面:
-
白话悲观锁
-
TiDB 悲观锁的使用和常见现象
-
TiDB 悲观锁与 MySQL 的兼容性
-
未来展望
白话悲观锁
自新年以来,口罩作为 2020 年最时尚的年货,变得异常难买,为了能够顺利抢到口罩,我是夜夜辗转难眠,日日盯着各大网站下单,通过这个过程,倒也总结出了各大平台的的购物体验:
-
A 类网站:加购物车飞快,成功加入购物车加后,下单不一定有库存。
-
B 类网站:加购物车有点卡,成功加入购物车后,下单一定有库存。
作为互联网研发从业者,聪慧如你,一起来思考这两类网站是如何实现加购物车这一逻辑?
A 类网站乐观地假设不存在其他客户同时抢这批口罩,库存代表没下单的库存,给了客户非常积极的体验,我们称这种行为下加购物车时,使用了乐观锁。

这种乐观锁使用的体验是:前期加购物车一时爽,最终下单可不一定爽。
当存在其他网友同时跟你抢这批口罩下单时,可能会遇到以下问题:
-
提交不一定成功。
-
冲突需要重试。(其他人先下单,库存变化,需要重试)</
TiDB4.0悲观锁详解

本文深入探讨TiDB4.0中悲观锁的使用与特性,对比MySQL的兼容性差异,解析悲观锁在并发控制中的优势及可能出现的死锁情况。适合数据库开发者和架构师了解分布式事务处理。
最低0.47元/天 解锁文章
868

被折叠的 条评论
为什么被折叠?



