Redis第四篇——缓存

Posted 搬砖小松鼠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis第四篇——缓存相关的知识,希望对你有一定的参考价值。

这一篇和Redis本身关系不大,而是我们在日常将Redis作为缓存使用时会遇到的几个问题

缓存穿透

关键点:访问一个不存在的key。 当请求一个不存在的key时,缓存就没用了,这样每次请求都直接打到我们后台的DB

解决办法:

(1)对不存在的key进行缓存

(2)使用布隆过滤器

布隆过滤器的特点:可保证返回不存在的元素一定不存在,返回存在的元素大概率存下,因此是存在一定的误判率的

缓存击穿

关键点:对于设置了过期时间的缓存数据,当该数据过期时,此时有大量对该数据的请求,就会导致这波突然的流量全打到数据库

解决办法:

(1)加锁请求

缓存雪崩

关键点:大量的key在同一时间过期,也会导致流量全打到数据库

解决办法:

(1)为不同的key设置不同的过期时间,在设置过期时间时增加一个随机值

缓存一致性

当做缓存时,缓存数据与数据库数据的一致性问题

以上是关于Redis第四篇——缓存的主要内容,如果未能解决你的问题,请参考以下文章

从Orchard学到的东西--第四篇 缓存介绍

高级程序员必须精通的Redis,第四篇之——set(集合)

Redis系列第四篇之Bitmap

Nginx学习日记第四篇 -- 反向代理及缓存功能

分布式缓存技术redis学习系列——redis高级应用(集群搭建集群分区原理集群操作)

关于AJAX 第四篇