redis的缓冲击穿|缓冲雪崩|缓冲淘汰

Redis 的缓存穿透和击穿

  1. 查询数据 缓存中有,从缓存中返回

  2. 缓存中没有,从数据库中查找,数据库中命中结果 ,将查询到的数据保存到缓存中

  3. 缓存中没有,从数据库中查找,数据库中也没有 , 不在缓存中保存key (被恶意访问时,容易发生缓存击穿)

  4. 通常即使不存在这个key,也会在缓存中保存,只是设置的key的过期时间较短 (setex(key, 5s, "");

  5. 还有一种,有一个热点key(经常被访问),如果这个key在redis中过期了,大量的访问突然访问数据库,导致数据库压力增加

Redis的缓存雪崩

  1. 一大批数据,集中创建缓存,缓存集中过期,造成一定时间内,数据库访问压力突然增大

  2. 缓存服务节点宕机, 缓存集中失效,导致数据库访问压力突然增加

Redis的缓存淘汰

  1. 主要说的是,针对访问频率不同的数据要设置不多的key的过期时间

posted @ 2019-04-10 10:25  zhangqi0828  阅读(194)  评论(0编辑  收藏  举报