1.为什么redis没有实现典型的加锁功能呢?
因为加锁有可能会造成长时间的等待,所以redis为了尽可能减少客户端的等待时间,并不会在执行watch命令时对数据进行加锁,相反的,redis会再数据被其他客户端抢先修改了的情况下,通知执行watch命令的客户端,这种做法叫做乐观锁,而关系型数据库中实际加锁的操作叫做悲观锁
1.为什么redis没有实现典型的加锁功能呢?
因为加锁有可能会造成长时间的等待,所以redis为了尽可能减少客户端的等待时间,并不会在执行watch命令时对数据进行加锁,相反的,redis会再数据被其他客户端抢先修改了的情况下,通知执行watch命令的客户端,这种做法叫做乐观锁,而关系型数据库中实际加锁的操作叫做悲观锁