缓存的概念

一 理解缓存

以空间换时间,所有保存 '中间的 额外的数据机制',都可以称之为缓存;

二 缓存的作用

通过一下两点,对系统性能有提升

1.缩短时间,有些数据可能查询起来或者运行起来很花时间,那么我们可以在某次获取改数据后放在可以快速取回的地方

2.降低压力,在高并发的情况下会导致数据库压力过大,借助数据缓存可以很好的规避这种问题

三 缓存的合理性

1.访问频率是高还是低? 如果访问频率低,缓存带来的业务复杂度弊端会高于系统性能提高的优势;所有访问频率高,适合缓存,而且效果也好些

2.读写比例是什么样的? 访问频率高,读多写少,适合缓存,效果好

3.使用缓存适合那些对数据一致性要求不高的业务

四 缓存的进化

1.业务开始,使用关系型数据库

2.用户量上来后,将数据库改为读写分离的架构

3.还是撑不住,增加数据缓存层

4.进一步优化,再次增加缓存层,形成多级缓存

5.通过增加缓存监控,确保缓存的有效性,以及进一步优化缓存的策略等

五 缓存常见的问题

下面所说的三种问题缓存方案都类似于Redis+Mysql,首先从缓存中获取数据,找不到的时候去数据库获取数据并更新到缓存中

1.缓存穿透-->请求去查询条压根儿数据库中根本就不存在的数据,也就是缓存和数据库都查询不到这条数据,但是请求每次都会打到数据库上面去

2.缓存击穿-->在平常高并发的系统中,大量的请求同时查询一个key时,此时这个key正好失效,就会导致大量的请求都打到数据库上面去,这种现象我们称为缓存击穿

3.缓存雪崩-->是指在某一个时间段,缓存集中过期失效

MyAnswer博客
请先登录后发表评论
  • 最新评论
  • 总共0条评论