使用redis的分布式锁
bullock的Python项目详细描述
使用redis的分布式锁。灵感来自Sherlock。
安装
$ pip install bullock
用法
frombullockimportBullocklock=Bullock(host="redis-hostname",key="my-first-lock",ttl=3600)lock.acquire(blocking=True)# do critical work herelock.release()
您还可以使用WITH语句:
frombullockimportBullockwithBullock(host="redis-hostname",key="my-first-lock",ttl=3600):# do critical work here
还支持使用redis集群:
frombullockimportBullocklock=Bullock(host="redis-hostname",key="my-first-lock",ttl=3600,redis_cluster=True)lock.acquire(blocking=True)# do critical work herelock.release()
有关更多示例,请参见tests。