转载地址:https://blog.youkuaiyun.com/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.youkuaiyun.com/d1562901685/article/details/54881862