Redis键值对存储数据库

1。什么是Redis

Redis是一个使用ANSI C编写的开源、支持网络、基于内存、可选持久性键值对存储数据库

2。缓存雪崩 | 缓存穿透 | 保证缓存与数据库双写时一致的问题

(1)缓存雪崩:

  • Redis挂掉了,请求全部走数据库。
  • 对缓存数据设置相同的过期时间,导致某段时间内缓存失效,请求全部走数据库。

注:缓存雪崩如果发生了,很可能就把我们的数据库搞垮,导致整个服务瘫痪

(2)缓存穿透

缓存穿透是指查询一个一定不存在的数据。由于缓存不命中,并且出于容错考虑,如果从数据库查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,失去了缓存的意义。

注:缓存穿透如果发生了,也可能把我们的数据库搞垮,导致整个服务瘫痪!

(3)如何保证缓存与数据库双写时一致的问题

不一致指的是:数据库的数据跟缓存的数据不一致

3。如果20万用户同时访问一个热点缓存,如何优化你的缓存架构

热key:就是你的缓存集群中的某个key瞬间被数万甚至十万的并发请求打爆

大value:就是你的某个key对应的value可能有GB级的大小,导致查询value的时候导致网络相关的故障问题。

posted @ 2019-01-15 09:20  kaixinyufeng  阅读(1993)  评论(0编辑  收藏  举报