分布式锁设计与实战:MySQL、Redis及Zookeeper实现详解.pptxVIP

  • 0
  • 0
  • 约小于1千字
  • 约 9页
  • 2026-05-28 发布于北京
  • 举报

分布式锁设计与实战:MySQL、Redis及Zookeeper实现详解.pptx

分布式锁精讲-实战版李瑾

锁的业务场景为什么要加锁?单机锁的类型分布式场景中该如何解决

MySQL中实现分布式锁利用MySQL的排他锁Select*fromtablewhereid=xxxforupdate实战案例分析

Redis与分布式锁在分布式系统中,当有多个客户端需要获取锁时,就需要分布式锁Redis分布式锁的实现1、最简单的实现2、如何避免死锁问题3、锁被别人释放怎么办?4、锁过期时间不好评估怎么办?单个Redis(单点故障问题)1主2从+哨兵、多个类似集群的方案处理严谨的流程:1、加锁:setkeyuuidextimenx2、操作共享资源3、释放锁:lua脚本(原子性),先get判断锁的是否属于自己,再del删除锁

锁过期时间不好评估怎么办?

分布式锁加入看门狗

Redis集群下的分布式锁集群下的锁的问题红锁RedLockRedlock实现整体流程1、客户端先获取「当前时间戳T1」2、客户端依次向这5台Redis实例(非集群)发起加锁请求3、如果=3个(大多数)成功,当前时间戳T2-T1锁的过期时间则加锁成功4、加锁成功,去操作共享资源5、加锁失败/释放锁,向5台Redis发起释放锁请求

RedLock的是是非非Redlock的NPC问题N:NetworkDelay,网络延迟P:ProcessPause,进程暂停(GC)

文档评论(0)

1亿VIP精品文档

相关文档