redis分布式锁
redis分布式锁原理:1、使用Redis的 SETNX 命令可以实现分布式锁SETNX命令: 将 key 的值设为 value,当且仅当 key 不存在。 返回1若给定的 key 已经存在,则 SETNX 不做任何动作。 返回0SETNX 是SET if Not eXists的简写。public class RedisLock implements Lock{ /**锁定资源的key**/ private final String lockName; /**持有锁的最长时间**/ private final int expireTime = 300; /**获取不到锁的休眠时间**/ private final long sleepTime = 100; /**锁中断状态**/ private boolean interruped = true; /**超时时间**/ private long expireTimeOut = 0; RedisClientTemplate redisClient = SpringContextHolder .getBean("redisClientTemplate"); public RedisLock(String lockName){ this.lockName = lockName; } @Override public void lock(