使用redlock-py做redis分布式锁

redlock-py - Python实现的Redis分布式锁

该Python库实现了基于Redis的分布式锁管理算法

安装

pip install redlock-py

创建锁管理器

dlm = Redlock([{“host”: “localhost”, “port”: 6379, “db”: 0}, ])

请求一个锁

mylock = dlm.lock(“myresource_name”,1000)

其中资源名称是您尝试锁定内容的唯一标识符,1000表示有效期的毫秒数。

若未成功获取锁则返回False(可重试),否则返回一个表示锁的命名元组,包含三个字段

  • 有效期,表示锁将有效的毫秒数的整数。
  • 资源,用户指定的锁定资源的名称。
  • 密钥,用于安全回收锁的随机值。

释放锁:

dlm.unlock(my_lock)

可以设置获取锁的重试次数(默认为3次)和重试间隔(默认为200毫秒)。

文档信息

版权声明:可自由转载(请注明转载出处)-非商用-非衍生

发表时间:2026年1月25日 15:07