专栏名称: 鸭哥聊Java
回复关键字:666 ,领取免费简历模板,Java面试题,Java编程视频等。本号内容涵盖Java源码,JVM源码,Dubbo源码,Spring源码,Spring Cloud微服务架构,分布式高并发架构技术,MySQL性能调优等。
今天看啥  ›  专栏  ›  鸭哥聊Java

网易面试题:Redis分布式锁的实现原理?什么场景下用到分布式锁?

鸭哥聊Java  · 公众号  ·  · 2025-01-21 11:31
    

文章预览

今天咱们聊聊我们的老朋友——Redis分布式锁。别看名字高大上,其实它就是分布式系统里一把“锁”,作用是让一群争抢同一资源的线程或者应用一个个排队来,不能同时开干。你可以理解为吃自助餐时,大家都盯着最后一块牛排,分布式锁就是那个负责维持秩序的服务员。 为什么用 Redis 来做分布式锁呢?原因很简单:Redis 是个高性能的共享存储,天生适合这种“大家都能访问一份数据”的场景。核心操作是 Redis 的 SET 命令,这里多了两个关键参数 NX 和 PX : NX 表示“只有键不存在时才设置”。 PX 表示设置键的过期时间,单位是毫秒。 举个例子,假如你需要加锁,可以用如下命令: SET lock_key unique_value NX PX 10000 这条命令的执行逻辑是这样的: 如果 lock_key 不存在,Redis 会插入这条数据,返回加锁成功。 如果 lock_key 已经存在,加锁 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览