作者:微信小助手
发布时间:2024-09-12T22:20:11
- 尼恩说在前面 - Redis分布式锁过期怎么办? - 两大Redis 分布式 - 分布式锁一般有如下的特点: - 基于Jedis 的API实现分布式锁 - Redis几种架构 - 首先看两个命令: - 基于Jedis API的分布式锁的总体流程: - 简单加锁:使用set的命令时,同时设置过期时间 - 基于Jedis 的API实现简单解锁代码 - 基于Lua脚本实现分布式锁 - lua脚本的好处 - 基于纯Lua脚本的分布式锁的执行流程 - 加锁的Lua脚本:lock.lua - 解锁的Lua脚本:unlock.lua: - 两个文件,放在资源文件夹下备用: - 在Java中调用lua脚本,完成加锁操作 - 在Java中调用lua脚本,完成加锁操作 - 通过实现JUC的显示锁Lock接口,实现一个简单的分布式锁 - 编写RedisLockService用于管理JedisLock - 测试用例 - STW导致的锁过期问题 - 锁过期问题 的解决方案 - 方式一:模拟CAS乐观锁的方式,增加版本号 - 方式二:watch dog自动延期机制 - 为啥推荐使用Redission - Redisson简介 - Redisson与Jedis的对比 - Redission 的源码地址: - 特性 & 功能: - Redisson的使用 - 如何安装 Redisson - 获取RedissonClient对象 - SpringBoot整合Redisson - 使用 RLock 实现 Redis 分布式锁 - Redision锁 核心源码分析 - getLock()方法 - tryLock方法 - tryAcquire()方法 - tryLockInnerAsync - 原理:加锁机制 - Lua脚本的详解 - 关于 lua脚本的参数解释: - 锁互斥机制 - 可重入加锁机制 - 释放锁机制 - unlock 源码 - unlockInnerAsync方法 - 原理:Redision 解锁机制 - 通过redis Channel 解锁订阅 - watch dog自动延期机制 - 使用watchDog机制实现锁的续期
本文目录
-一、导入Maven依赖
-二、核心配置文件
-三、添加配置类
-自定义starter