JAVA全系列 教程
3762个小节阅读:7091.1k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
缓存击穿是指,redis缓存中的数据在过期的一瞬间,突然有大量请求拥入,由于此时缓存过期,所以请求最终都会流入数据库,造成瞬时数据库请求量大、压力骤增,甚至可能打垮数据库。
在我们的秒杀功能中不会出现缓存击穿问题。因为我们的秒杀商品数据是没有设置过期时间的,也就不存在过期时的击穿问题。并且将缓存设置为不过期,由定时任务去更新缓存就是解决缓存击穿的一种方案。
缓存击穿的另一种解决方案是利用互斥锁,即要求只能有一个线程拿到锁并执行数据库查询操作,其他没有锁的线程会被阻塞,等到第一个线程将数据写入缓存后,其他线程直接查询缓存。