Redis分布式锁机制深度.pdfVIP

  • 0
  • 0
  • 约1.07千字
  • 约 1页
  • 2026-09-07 发布于北京
  • 举报

做一个总结,从实现原理以及源码的层面,真正剖析和了解到了redis分布式锁的企业级的

实现,这个分布式锁实现的还是非常漂亮的,麻雀虽小,五脏俱全,分布式的可重入锁,总

结一下redis

(1)加锁:在redis里设置hash数据结构,周期是30000毫秒

(2)维持加锁:代码里一直加锁,redis里的key会一直保持存活,每隔10秒的定时任

务(watchdog)不断的检查,只要客户端还在加锁,就刷新key的周期为30000毫秒

(3)可重入锁:同一个线程可以多次加锁,就是在hash数据结构中将加锁次数累加1

(4)锁互斥:不同客户端,或者不同线程,尝试加锁陷入死循环等待

(5)手动释放锁:可重入锁自动递减加锁次数,全部释放锁删除锁key

(6)宕机自动释放锁:如果持有锁的客户端宕机了,那么此时的watchdog定时调度任

务也没了,不会刷新锁key的周期,此时redis里的锁key会自动释放

(7)尝试加锁超时:在指定时间内没有成功加锁就自动死循环,标识本次尝试加锁失

(8)超时锁自动释放:获取锁,在一定时间内没有手动释放锁,则redis里的key自动

过期,自动释放锁

这8大

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档