- Redisson -> LUA
- 自旋信号量拿锁
- 解锁后信号量唤醒尝试再加锁(Redis订阅发布通知唤醒)
- 锁续命
- 避免线程执行时锁失效,导致该线程释放其它线程的锁
- 锁重入
- 读写锁
- 锁失效:无解,Redis的可用性高于可靠性
- 原子加锁&原子解锁:避免加解锁中途服务故障
- 自旋信号量拿锁
- RedLock(超半数加锁)锁失效:
- 主从锁失效
- 复制延迟
- 主从切换
- 1s持久化数据丢失
- 网络分区
- 时钟漂移
- 宕机(无法在足够多的实例上获取锁)
- 主从锁失效
- 锁粒度:分段锁(将一个key拆分成多个,供不同的服务器读写)
- Redisson 分布式锁
上一篇

2024-09-10
下一篇

2024-09-10