老师,第一次查该车次令牌的时候,缓存中是没有的该车次的令牌大闸,这时候会去数据库中查询令牌数量,然后放在缓存中,现在有个问题

来源:18-6 使用缓存加速令牌锁功能

Styxmale

2025-10-22

老师,第一次查该车次令牌的时候,缓存中是没有的该车次的令牌大闸,这时候会去数据库中查询令牌数量,然后放在缓存中,现在有个问题是,如果同时有大量请求该车次,发现没有令牌,就会都去查询数据库,还是会造成数据库压力过大的问题,是不是应该在查询数据库的时候 ,再加一个分布式锁呢?这样只能有一个用户去拿令牌数量,其余的快速返回失败,这样会更保险。我看了老师的课程没发现取令牌大闸的时候设置分布式锁,不知道是我看的不仔细还是老师忘了设置了呢?

图片描述

写回答

1回答

甲蛙

2025-10-28

对于你说的这种场景,就是缓存雪崩。处理的方案有多种,一种是你说的加上分布式锁,还可以主动提前放缓存,就是预热,也可以定时刷新缓存。

0
1
Styxmale
非常感谢!
2025-10-28
共1条回复

新版Springboot3.0打造能落地的高并发仿12306售票系统

最新版Spring3.0仿12306售票系统实战

895 学习 · 529 问题

查看课程