一种基于redis的分布式锁的实现(当前项目中在使用)
主要思想是利用redis执行命令时的单线程特性。 /** * 分布式锁 */ @Component public class DistributedLock { public static final Logger logger = LoggerFactory.getLogger(DistributedLock.class); /** * 加锁默认超时时间 */ private static final long DEFAULT_TIMEOUT_SECOND = 5; /** * 获取所等待的时间 */ private static final long DEFAULT_WAITE_TIMEOUT_SECOND = 5; /** * 加锁循环等待时间 */ private static final long LOOP_WAIT_TIME_MILLISECOND = 30; @Autowired @Qualifier("redisCacheServi