浅谈Redis实现分布式锁的key和value
样例:
- 在秒杀抢购优惠券环节,key是用户id+优惠券id,value是后端机器id
- 在多阶段异步流任务框架中,key是任务id,value是后端机器id
- key是用户id是让一个用户在同一时间内只能做一次访问数据库操作
- key是优惠券id是让一个优惠券在同一时间只能被访问一次
- value永远都是后端机器id,表示锁的持有者
总结:
- 如果你要保证一个任务在同一时刻只被处理一次,那么key就是这个任务id
- 如果你要保证一个优惠券在同一时刻只被一个人抢购一次,那么这个key就是用户id+优惠券id
- 等价于数学上取交集
- value永远都是后端机器id,表示锁的持有者
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 cloud_fly blog!