3小时带你实现Redis分布式锁(一)学习笔记 day9

本文介绍了如何使用Redis实现分布式锁,详细阐述了分布式锁的概念、实现原理和编程实践,包括两个实现版本,强调了设置过期时间和使用UUID作为值的重要性,并在小结中总结了解锁的逻辑。
摘要由CSDN通过智能技术生成

用Redis实现一个最简分布式锁

一、什么是分布式锁

分布式锁,简单来说就是在分布式环境下不同实例之间抢一把锁。和普通的锁比起来,也就是抢锁的从线程(协程)变成了实例。分布式锁和网络相关。

总的来说就是:不同的进程通过网络通信去抢存在于redis中的一把锁。

在分布式环境下去抢一把锁可能会有以下这几种情况:

  1. 抢到了

  2. 没抢到

  3. 网络通信超时了(重点)

拓展:非分布式锁,一般在同一个进程中,里面几个goroutine在抢同一把锁。这时候存在两种情况,抢到和没抢到。实现起来相对简单一些。

二、如何实现

从本质来说,Redis的分布式锁就是一个键值对。所以实现一个分布式锁的起点,就是利用setnx命令,确保可以排他地设置一个键值对。

</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值