当前位置: 首页 > news >正文

【Redis】什么是缓存雪崩,如何预防缓存雪崩?

【Redis】什么是缓存雪崩,如何预防缓存雪崩?

如果缓存集中在一段时间内失效,也就是通常所说的热点数据集中失效 (一般都会给缓存设定一个失效时间,过了失效时间后,该数据库会被缓存直接删除,从而一定程度上保证数据的实时性),发生大量的缓存穿透,造成大量的查询要查询数据库,这就造成了缓存雪崩,可能会导致数据库崩溃。

如果缓存中间件宕机,当然可以对缓存中间件做高可用集群来避免。

下面推荐几个缓存雪崩的解决办法:

  • 在缓存失效后,通过加锁或者队列来控制读数据库重建缓存的线程数量。例如,同一时刻只允许一个线程查询数据和重建缓存,其他重建缓存的线程此时在等待状态。
  • 可以通过缓存reload机制,预先去更新缓存,在即将发生大并发访问前手动触发加载缓存。
  • 不同的 Key,设置不同的过期时间,让缓存失效的时间点尽量均匀。例如,可以在原有的失效时间基础上增加一个随机值,如1~5min 随机,这样每一个缓存的过期时间的重复率就会降低,就会大大降低缓存集体失效的概率。
  • 做二级缓存,或者双缓存策略。A1 为原始缓存,A2 为备份缓存,A1失效时,可以访问
    A2,A1缓存失效时间设置为短期,A2 设置为长期。
http://www.lryc.cn/news/131527.html

相关文章:

  • [国产MCU]-W801开发实例-开发环境搭建
  • 区间预测 | MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测
  • 改善神经网络——优化算法(mini-batch、动量梯度下降法、Adam优化算法)
  • 大数据面试题:Spark的任务执行流程
  • 通过 Amazon SageMaker JumpStart 部署 Llama 2 快速构建专属 LLM 应用
  • ansible远程执行命令
  • Windows快速恢复丢失的颜色校准
  • Vue安装单文件组件
  • 小白的Node.js学习笔记大全---不定期更新
  • 第二周晨考自测(2.0)
  • 计算机视觉之三维重建(三)(单视图测量)
  • docker 批量快速删除容器和镜像
  • 【数据分析入门】Matplotlib
  • mongodb.使用自带命令工具导出导入数据
  • IndexError: tensors used as indices must be long, byte or bool tensors
  • 设计模式 : 单例模式笔记
  • 深度优先搜索算法
  • k8s ----POD控制器详解
  • ReactNative进阶(三十四):ipa Archive 阶段报错error: Multiple commands produce问题修复及思考
  • MySQL索引ES索引
  • webSocket 聊天室 node.js 版
  • iptables防火墙(SNAT与DNAT)
  • 第 359 场 LeetCode 周赛题解
  • 【开源项目】Stream-Query的入门使用和原理分析
  • 微信小程序picker组件的简单使用 单选
  • python、numpy、pytorch中的浅拷贝和深拷贝
  • EasyRecovery14数据恢复软件支持各类存储设备的数据恢复
  • 玩机搞机----面具模块的组成 制作模块
  • 注册中心/配置管理 —— SpringCloud Consul
  • Next.js 13 你需要了解的 8 件事