带redis的分布式锁

redlock-dist的Python项目详细描述


红锁距离

Redis

实现分布式锁

Distributed locks with Redis

使用量

安装:

pip install redlock-dist

示例:


from redis import StrictRedis
from redlock_dist import RedLock

rds = StrictRedis(host='localhost', port=6379, db=0)

"""
:param expire: lock key ttl(ms)
:param retry_times: retry times to get lock
:param retry_interval: retry interval(ms)
"""
with RedLock(rds, 'key-name', expires=30000, retry_times=3, retry_interval=50) as red_lock:

    if red_lock:
        print('get lock')
    else:
        print('do not get lock')

原则和注意事项

因为redis是单线程的,您可以使用SET key value NX PX expires

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何删除打印行之间的空格?   如何解决Jsoup Java中的HTML错误500   Java移植到Python中的AES加密   java如何将列表数据加载到struts组合框标记中   java返回两个数字的索引,这样它们加起来就是一个特定的目标   swing java web start未知源异常   如何更改光标在java中的位置   java重新讨论了如何使用POJO验证响应体   swing Java 2d游戏:为什么变量在KeyReleased之外没有变化?   java在Hibernate中检索manytoone关系中的manyside对象的ID   java在用作表编辑器时动态填充JComboBox   java Android studio gradle签名块验证错误   java split方法,用于在读取文件时输出彼此下面的值