zoukankan      html  css  js  c++  java
  • redis 12 企业级解决方案

    1. 缓存预热(不是很懂)

    2. 缓存雪崩

    1. 原因
      大量数据同一时间失效,导致redis中没有该数据,服务端直接请求数据库,对数据库造成极大的压力,甚至崩溃
    2. 解决方案
      从redis本身入手:
        a. 数据的有效期进行错开,不要设置同样的有效期
        b. 超热的数据使用永久key
        c. 对于即将过期的数据做访问量分析,对于热点数据进行延时(人工+脚本)
      从架构设计入手
        a. 多级缓存架构,nginx+redis+ehcache
        b. 对数据库进行性能优化
        c. 设置灾难预警机制,cpu,容量,查询时间等
        d. 高峰限流,损耗一定的用户体验,保护服务器

    3. 缓存击穿

    1. 单个key在redis中没有缓存或失效,当有大量的请求发过来的时候,都去请求数据库,导致数据库压力过大
    2. 解决方案
        预防为主,提前考量

    4. 缓存穿透

    1. 访问一个根本不存在的数据,redis中肯定没有,所以要去数据库查,其实数据库也没有,但是会对数据库造成查询压力(一般是黑客攻击)
    2. 解决方案
        a. 白名单过滤数据库不可能存在的数据
        b. 实时监控,然后人工对应
  • 相关阅读:
    图像功率结合
    三星(多星)模型
    双星模型
    卫星变轨问题
    桌面木块弹簧
    球——绳模型、球——杆模型
    汽车拐弯问题
    圆锥摆模型
    省队集训日记
    NOI前比赛经验总结
  • 原文地址:https://www.cnblogs.com/JackShi/p/15611302.html
Copyright © 2011-2022 走看看