乐观锁(Optimistic Lock):
- 每次获取数据的时候,都不会担心数据被修改,所以每次获取数据的时候都不会进行加锁,但是在更新数据的时候需要判断该数据是否被别人修改过。如果数据被其他线程修改,则不进行数据更新,如果数据没有被其他线程修改,则进行数据更新。由于数据没有进行加锁,期间该数据可以被其他线程进行读写操作。
- 比较适合读取操作比较频繁的场景,如果出现大量的写入操作,数据发生冲突的可能性就会增大,为了保证数据的一致性,应用层需要不断的重新获取数据,这样会增加大量的查询操作,降低了系统的吞吐量。
乐观锁是一种并发控制策略,它假定读操作远多于写操作,因此在读取数据时不加锁,在更新数据前检查数据版本,以避免不必要的锁定开销。如果数据在更新前已被其他线程修改,更新将被拒绝,以维护数据一致性。

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



