09 悲观锁和乐观锁

vvEcho 2024-01-20 14:08:36
Categories: Tags:

悲观锁,按字面意思就是很悲观,每次获得去修改数据时总算悲观的认为数据已经被修改了,因此每次在获取到数据时都先给数据加锁,在操作数据的整个过程中一直上锁,等操作结束才会释放锁

乐观锁,按字面意思就是很乐观,每次获得数据后总算乐观的认为数据没有被修改,只有在执行更新操作时才会判断数据是否被修改,如果数据被修改则放弃本次更新操作

综上原因,悲观锁适合写入较多的场景即冲突较多的场景,乐观锁适合读多写少的场景即冲突较少的场景;