导语
本篇博客,博主使用本地的Docker 搭建了一套测试环境,用来手写一个属于自己的基于Redis分布式锁实现方案,通过自己实现来了解分布式锁的原理。并且对整个的构建过程做了分享,希望可以对大家学习分布式锁有所帮助。
环境搭建
- Redis
- Spring Boot
- Nginx
- Jmeter
分布式锁需要解决的问题
- 互斥性
- 锁超时
- 支持阻塞与非阻塞
- 可重入性
- 高可用
互斥性
在一个电商系统中,如果一个客户进行下单操作,那么对应的要对实际的库存进行减扣操作,基于这样的一个场景,就会出现超卖的问题。那么什么是超卖问题,通过下面的演示来看一下什么是超卖问题?
@RestController
public class