乐观锁

霄
2022-11-12 / 0 评论 / 72 阅读 / 正在检测是否收录...

乐观锁假设认为数据一般情况下不会造成冲突,所以在数据进行提交更新的时候,才会正式对数据的冲突与否进行检测,如果发现冲突了,则让返回用户错误的信息,让用户决定如何去做。那么我们如何实现乐观锁呢,一般来说有以下2种方式:

1.使用数据版本(Version)记录机制实现,这是乐观锁最常用的一种实现方式。何谓数据版本?即为数据增加一个版本标识,一般是通过为数据库表增加一个数字类型的 “version” 字段来实现。当读取数据时,将version字段的值一同读出,数据每更新一次,对此version值加一。当我们提交更新的时候,判断数据库表对应记录的当前版本信息与第一次取出来的version值进行比对,如果数据库表当前版本号与第一次取出来的version值相等,则予以更新,否则认为是过期数据。

乐观锁 :

数据库 字段version

默认为1更新数据库信息

设置属性version 为1则更新成功

version 自增此时version 为 2

若 属性version 不等于 2 则更新失败

扫描二维码,在手机上阅读!
31

评论

博主关闭了当前页面的评论