zoukankan      html  css  js  c++  java
  • redis大杂烩

    redis 基础的五种数据结构: string, hash ,list (双向链表)  ,set(不重复集合),zset(跳表)

    1.redis的3种问题:

     缓存雪崩:大量缓存过期时间一致导致 同时过期,大量请求到数据库崩了。解决方案: 差异化过期时间

     缓存击穿:正在被大量请求的热键突然过期导致大量请求执行到了数据库。解决方案:1.热点数据写入到内存缓存中。2.热点数据永不过期。3.加锁。串行访问数据库。第一个访问到数据到写入到redis,其他的就不会再访问到数据库了。

     缓存穿透:访问缓存和数据库中都不存在的值,比如 id=-1这种,会一直将请求执行到数据库。高并发会导致数据库崩溃。 解决方案:将这种数据也缓存在redis中,(-1,null)。

    2.分布式中数据一致性问题:延迟双删策略:先更新数据库数据,再删除缓存中数据,再2,3s后再删除缓存数据。

       主要解决多个请求的互相干扰问题。(两个更新一个读操作的数据一致性问题)

    3.redis的rdb和aof:

      rdb 将缓存快照异步写入到磁盘文件:会存在数据丢失

       aof 将操作日志同步写入到磁盘文件:文件比较大

        

       

      

  • 相关阅读:
    某不知名的树形Dp
    HDU-5963 朋友 思维
    CF1292C Xenon's Attack on the Gangs
    Emergency Evacuation 模拟了一下
    NOI2003 逃学的小孩
    UVA11300 Spreading the Wealth 数学
    ACWing 1510 楼梯
    测试代码高亮
    Pollard-rho的质因数分解
    米勒罗宾素数检测(Miller-Rabin)
  • 原文地址:https://www.cnblogs.com/fishyues/p/14614168.html
Copyright © 2011-2022 走看看