Redis事物

Redis 事务本质:一组命令的集合! 一个事务中的所有命令都会被序列化,在事务执行过程的中,会按 照顺序执行!事务中的多个命令被一次性发送给服务器

Redis事务没有没有隔离级别的概念!事物中的命令没有被执行,只有发起的时候才会被执行,

Redis 最简单的事务实现方式是使用 MULTI 和 EXEC 命令将事务操作包围起来。

MULTI开启后,执行命令都会进入队列,执行EXEC,才会顺序执行指令,DISCARD可以取消事物

 

事物过程中执行出错的情况:

1、语法错误:整个事物无法执行失败

2、执行错误:其中可以正确执行的,执行有错的不执行

基于特定条件的事物执行-锁

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

watch key1 [key2......] 

取消对所有key的监视

基于特定条件的事物执行-分布式锁

使用setnx设置一个公共锁

setnx lock-key value

使用del删除

基于特定条件的事物执行-分布式锁改良

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

expire lock-key second

pexpire lock-key milliseconds

例:expire lock-name 20

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值