7.redis事务和锁

1.事务

1.1开启事务

multi

设定事务的开启位置,此指令执行后,后续的所有指令均加入到事务中

1.2执行事务

exec

设定事务的结束位置,同时执行事务。与multi成对出现,成对使用。
注意:加入事务的命令暂时进入到任务队列中,并没有立即执行,只有执行exec命令才开始执行

1.3 取消事务

discard

终止当前事务的定义,发生在multi之后,exec之前

2.锁

2.1锁

对 key 添加监视锁,在执行exec前如果key发生了变化,终止事务执行

watch key1 [key2……]

取消对所有 key 的监视

unwatch

2.2分布式锁

使用 setnx 设置一个公共锁

setnx lock-key value

1号想上厕所,给厕所上锁,则2号无法上厕所

使用 expire 为锁key添加时间限定,到时不释放,放弃锁

expire lock-key second
pexpire lock-key milliseconds

猜你喜欢

转载自blog.csdn.net/qq_44954571/article/details/122969774