Redis-超卖问题

悲观锁:简单粗暴,性能一般。

认为线程安全一定会发生,在操作数据之前获取锁,确保线程串行执行。

Synchronized。Lock都属于悲观锁

 乐观锁,性能较好。

认为线程安全问题不一定存在,因此不加锁。只是在更新数据时去判断有没有其他线程对数据做修改。

如果没有修改则认为是安全。

如果被其他线程修改,则可以重试或异常。

 

乐观锁关键:

版本号法: 

CAS法:

乐观锁弊端:成功率太低

posted on 2023-03-18 21:20  常乐°  阅读(18)  评论(0编辑  收藏  举报