目录
一、缓存是什么?
你可以把 缓存 = 系统提前"抄好的小抄"
-
数据库/真实代码逻辑 = 课本(真实、最新,但翻起来慢)
-
缓存 = 小抄(复制了课本内容,读起来飞快)
用户访问时,系统优先看小抄,不翻课本,速度才快。
二、需求上线为什么要"刷缓存"?
因为:
新需求上线 = 课本内容改了,但小抄还是旧的!
举个真实例子:
-
旧需求:商品价格 100元,系统把"100元"抄进缓存(小抄)。
-
你上线新需求:改成 80元。
-
但缓存里还是100元,用户看到的依然是旧价格。
刷缓存 = 把旧小抄撕掉,重新抄一遍新内容。
三、刷缓存重要原因
(1)保证数据的准确性
1.旧数据残留问题;
2.新数据可见性
(2)适应系统架构变化
1.服务调用关系变更;
2.数据库模式改变;
(3)性能优化方面的考虑
1.缓存命中率调整;
2.避免缓存膨胀
四、总结
需求上线改了代码/数据 ,但缓存还记着老样子。
不刷缓存,用户看到的就是旧页面、旧功能、旧数据,跟没上线一样,甚至出bug。
刷缓存,就是强制让系统忘掉旧内容,记住新内容。