提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、直接添加Redis缓存 二、使用setnx执行抢锁过程 三、setnx获取锁+设置过期时间 四、引入UUID解决误删锁问题 五、引入Lua脚本来做删除 六、对递归部分优化进行自旋 七、添加自旋次数 八、改为重入锁,使其就有可重入性 一、直接添加Redis缓存 先来看一个常见的缓存使用方式:读请求来了,先查下缓存,缓存有值命中,就直接返回;缓存没命中,就去查数据库,然后把数据库的值更新到缓存,再返回。 出现的问题: 当高并发的情况下,出现数据不一致性。 解决方案: 加锁 当启动多个微服务并发测试时