Redis分布式锁的原理、作用及实现(简单易懂)

转载地址:https://blog.csdn.net/d1562901685/article/details/54881862;

setnx+getset方式 
加锁:setnx(lock, 时间戳+超时时间) 
解决并发:

while(jedis.setnx(lock, now+超时时间)==0){
    if(now>jedis.get(lock) && now>jedis.getset(lock, now+超时时间)){
        break;
    }else{
        Thread.sleep(300);
    }
}
执行业务代码;
jedis.del(lock);
释放锁:jedis.del(lock);
原文:https://blog.csdn.net/d1562901685/article/details/54881862 

你可能感兴趣的:(java,redis)