Redis提供了Lua脚本功能,在一个脚本中编写多条Redis命令,确保多条redis命令执行时的原子性。(让判断线程标识和释放锁原子执行)
1.下载lua插件
2.创建lua文件
3.调用lua脚本
public void unlock() {//调用lua脚本原子性的判断线程标识,和释放锁。stringRedisTemplate.execute(UNLOCK_SCRIPT,Collections.singletonList(KEY_PREFIX + name),ID_PREFIX + Thread.currentThread().getId());}