美文网首页我爱编程
使用Redis实现分布式锁

使用Redis实现分布式锁

作者: Do_40 | 来源:发表于2018-04-16 16:43 被阅读0次

借用SETNX

SETNX key value

将 key 的值设为 value ,当且仅当 key 不存在。

若给定的 key 已经存在,则 SETNX 不做任何动作。

SETNX 是『SET if Not eXists』(如果不存在,则 SET)的简写。

可用版本:

    >= 1.0.0

时间复杂度:O(1)

返回值:

设置成功,返回 1 。

设置失败,返回 0 。

redis> EXISTS job                # job 不存在

(integer) 0

redis> SETNX job "programmer"    # job 设置成功

(integer) 1

redis> SETNX job "code-farmer"  # 尝试覆盖 job ,失败

(integer) 0

redis> GET job                  # 没有被覆盖

"programmer"

相关文章

网友评论

    本文标题:使用Redis实现分布式锁

    本文链接:https://www.haomeiwen.com/subject/bouekftx.html