2019独角兽企业重金招聘Python工程师标准>>>
在之前的时候一般通过zookeeper来实现分布式锁,但是zookeeper的速度肯定比不上redis,因为redis是基于内尺寸的,redis也可以实现分布式锁:
他的实现原理主要有两点
1:众所周知redis 是单线程的,他会把外界命令放到一个队列中有序的执行,所以不存在竞争的可能
2:主要使用setNX(set if not exist)在set的时候如果set成功,返回1,如果里面有值了就返回0
那么我们就可以利用这个特性来实现分布式锁,如果是1表示获取锁成功,0表示获取锁失败。
待续...