后端岗位面试题更新 2026-08-05

如果是setnx实现分布式锁,现在有两个线程同时去访问这个分布式锁,极端情况下两个线程都能获取到锁吗?

万得信息后端开发互联网/IT风险判断技术原理Redis

考察说明

考察分布式锁原子性与极端并发场景的理解

回答思路

  1. 明确SETNX是原子操作,同一时刻只有一个客户端能成功设置
  2. 说明极端情况指网络分区、主从切换或锁过期等场景
  3. 分析在Redis主从架构下锁可能丢失导致两线程均获取锁
  4. 讨论fencing token或Redlock等方案应对该问题
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。