• 缓存雪崩解决方案


    概念
    服务器重启或者因为失效期造成的在同一时间内,缓存同时失效,导致一瞬间所有的请求都聚集到数据库上,从而导致的连锁反应;

    缓存雪崩解决方案


    想要解决首先要找到缓存雪崩产生的原因:
    主要的几种场景:
    缓存服务器不可用;---对应解决方案,redis集群;保证有缓存可用(HA);
    热点缓存失效;---热点缓存永不失效,例如定期去更新热点缓存等;
    高峰访问器缓存失效;---对应方案一,增加服务器,平衡服务器压力(HA)或者限流模式,对服务设置qps阈值;
    缓存失效时间一致导致;---失效日期随机,或者增加刷新缓存机制;
    其他:
    程序bug导致等,

    以上为预防缓存雪崩的方案,特定的场景缓存雪崩可能还会出现,因此需要对后续进行防守,

     防守方案:

    1,熔断模式
    a.缓存失效后,会对数据库服务器增加压力导致连锁反应,因此可用对数据库的访问增加互斥锁,减少数据库的压力。
    b.通过监控服务器的指标,如cpu,线程数,长事务sql等,来对后面的请求进行阻隔;
    (熔断判断算法,熔断恢复,熔断的预警)
    2,隔离模式
    系统的服务互相独立,这样在一个服务挂掉后,其他还能正常运转;

  • 相关阅读:
    分布式系统之CAP理论杂记
    RPC详解
    玩转zookeeper命令
    NRPE介绍
    开启irqbalance提升服务器性能
    xinetd被动服务唤醒
    服务发现的基本原理[转]
    关于TCP/IP,必知必会的十个经典问题[转]
    Smart Client技术简要总结
    使用ng-grid实现可配置的表格
  • 原文地址:https://www.cnblogs.com/ykwang/p/14782046.html
Copyright © 2020-2023  润新知