【Redis实现分布式锁】1.set加锁 2.解锁(是否自己加的锁和真正解锁代码2个操作的原子性问题需用lua脚本解决)

 1)基本加锁的代码

jedis.set(String key, String value, String nxxx, String expx, int time)

2)解锁

解锁的话,由于要判断是不是自己加的锁 和 真正解锁操作不是原子的,需要结合lua脚本实现原子性操作。因此分布式锁最好用redisson,更加的方便。

理解:

key: 来当锁

value: 解铃还须系铃人,用于验证客户端

nxxx: NX  (SET IF NOT EXIST),就是:key不存在则执行set操作

expx: EX:秒  PX:毫秒   

time: 间隔,单位就是参数4

返回值:

"OK": 成功

null: 失败. 包括nxxx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值