上节提到了,分布式锁通常应满足如下要求,互斥性.高可用.高效率.可重入.锁失效这五个基本原则.由于Redis自身“快”的特点,所以高效率可以看作满足. 下文在单机情况下与多机情况下,对利用Redis实现分布式锁做出了阐述. 单机Redis分布式锁 由于Redis本身的单线程特性,所以可以采用设置一个值的方式进行分布式锁.通常采用SETNX(set if not exist),进行设置,对资源使用完毕后,使用DEL进行删除.可以根据SETNX的返回值得到,是否成功获得锁,这一定程度上实现了互斥性,…