首页 > 数据库 >redis雪崩问题解决

redis雪崩问题解决

时间:2023-07-09 18:22:21浏览次数:42  
标签:缓存 请求 数据库 redis 崩掉 雪崩 设置 解决 失效

缓存雪崩

出现的场景

  1. 缓存服务器宕机,没有设置持久化
    介绍:缓存服务器宕机,没有设置持久化,导致缓存数据全部丢失,请求全部转发到数据库,造成数据库短时间内承受大量请求而崩掉。
    img
  2. 缓存集中失效
    缓存的key设置了相同的过期时间,导致在某一时刻,大量的key同时失效,请求全部转发到数据库,造成数据库短时间内承受大量请求而崩掉。
    img
  3. 内存不足
    缓存服务器内存不足或者淘汰策略不合理,导致缓存数据被清理,请求全部转发到数据库,造成数据库短时间内承受大量请求而崩掉。
    img

redis淘汰策略

img

解决方案

分散缓存失效时间

根据数据类型,设置不同的过期时间,避免缓存集中失效。
img

热门数据永不过期

img

热点数据预热

介绍:在系统上线的时候,主动将一些热点数据加载到缓存中,避免在用户请求的时候,先查询数据库,然后再将数据缓存的问题。此外,还可以使用定时刷新缓存的方式,定时的将缓存中的数据重新刷新一下。
img

数据库增加访问限流

数据库限流介绍:在高并发的情况下,对数据库的访问进行限流,避免数据库短时间内承受大量请求而崩掉。
MYSQL与Redis的最大连接数介绍:

  • MYSQL数据库的最大连接数是由max_connections参数控制的,max_connections参数的默认值是151,这个值是不够用的,一般我们都会将这个值设置的大一些,比如设置为500,这样就可以支持500个并发连接了。
  • Redis数据库的最大连接数是由maxclients参数控制的,maxclients参数的默认值是10000,这个值是不够用的,一般我们都会将这个值设置的大一些,比如设置为100000,这样就可以支持100000个并发连接了。
    img

服务降级

介绍:当缓存服务器宕机或者缓存集中失效的时候,可以通过服务降级的方式,将部分非核心服务进行降级(比如返回提示暂时不可用等),从而保证核心服务的正常运行。
img

标签:缓存,请求,数据库,redis,崩掉,雪崩,设置,解决,失效
From: https://www.cnblogs.com/wan-shuang/p/17539108.html

相关文章

  • ICT应用解决方案考核项目
    考核项目地址规划表设备接口地址备注ISPg0/0/01.1.1.254/24g0/0/1202.100.10.1/24g0/0/2101.100.10.1/24YX-FWg1/0/1202.100.10.2/24easy-ipg1/0/0192.168.30.2/24tunnel1192.168.50.1/24greYC-FWg1/0/1101.100.10.2/24nap......
  • Redis基本部署和使用​
    redis是什么Redis是现在最受欢迎的NoSQL数据库之一,Redis是一个使用ANSIC编写的开源、包含多种数据结构、支持网络、基于内存、可选持久性的键值对存储数据库。redis的优势高性能读取和写入数据、支持丰富的数据类型、数据原子性、支持分布式,理论上可以无限扩展、支持数据备份功能......
  • python获取小红书web_session,以及解决x-s签名验证(2023-07-09)
    一、web_session请求接口:https://edith.xiaohongshu.com/api/sns/web/v1/login/activate请求类型:post提交数据:{}这儿是两个字符{},笔者最初提交None,总得不到结果,chromeF12才发现需要这两个字符。二、签名验证x-s 该请求需要x-s签名验证,签名代码如下:a1="186d30820a4......
  • Redis
    Redis入门redis简介redis的下载和安装linuxwindowsredis服务启动与停止linux修改成后台启动,在redis4.0文件夹下修改redis.conf。在vim中输入/dae,修成如下图所示:向后查找:n,向前查找N。再启动服务:src/redis-server./redis.confwindows设置启动服务密码在......
  • Redis缓存同步1-策略介绍
    缓存数据同步策略示意图在大多数情况下,我们通过浏览器查询到的数据都是缓存数据,如果缓存数据与数据库的数据存在较大差异的话,可能会产生比较严重的后果的。所以,我们应该也必须保证数据库数据、缓存数据的一致性,这就是缓存与数据库的同步。缓存数据同步策略缓存数据同步,常见的......
  • Spring单例的解决方案
    1spring单例V.S设计模式的单例设计模式单例,在整个应用中只有一个实例spring单例,在一个IoC容器中只有一个实例Spring框架对单例的支持是采用单例注册表但spring中的单例也不影响应用并发访问。大多数时候客户端都在访问我们应用中的业务对象,为减少并发控制,不应在业务对象中设置那......
  • 解决虚拟机VM中kali linux 无法联网的问题
    今天登录KaliLinux发现浏览器无法连接网络,自己并没有改过任何配置,通过自己多方面搜寻解决教程,现将解决方法做此纪录。1.首先关闭kalilinux,点击设置,保证自己的kali网络适配器是桥接模式,且勾选复制物理网络连接状态,点击确定进行保存。  2.打开kalilinux,然后使用ctrl+alt+......
  • 数据权限解决方案
    一、表结构设计  二、实现思路 1.系统启动时将字典数据加载到redis作为可选常量池,以及mapper.xml、dao、数据规则信息加载到redis 2.用访问时通过springmvc拦截器对用户进行拦截获取token然后通过RSA解密获取用户信息,将用户信息,以及请求参数加入本地线程 3.mybatis-......
  • Win10很卡顿怎么办?Win10卡顿严重完美解决办法
      Win10很卡顿怎么办?Win10卡顿严重完美解决办法时间:2022-11-2410:17:50 作者:娜娜 来源:系统之家  手机查看 评论  反馈网盘下载Win1022H2专业版镜像官网下载V2022.11大小:5.86GB类别:Windows10系统Win10很卡顿怎么办?我们的电脑使用时间长了,很容易出......
  • redis
    Redis一、redis介绍Redis是一个缓存数据库,主要是做缓存。用户请求数据时,第一次先请求redis中的数据,redis中没有,再去请求后台数据库Redis是一种内存型的nosql数据库,一般是用来缓存加速的,并且能够支持数据持久化存储,可以将数据持久化到硬盘中Redis存储数据的方法是以key-value的......