首页 > 数据库 >redis的几种并发场景的问题及解决策略

redis的几种并发场景的问题及解决策略

时间:2023-02-02 10:02:50浏览次数:36  
标签:场景 策略 访问 数据库 redis 并发 缓存 key


简介

 

redis作为应用与数据库的中间缓存,用户访问数据源会首先访问redis,查询无数据则直接查询数据库,查询到后,返回的数据会加载到redis里面。在使用的过程中,redis在并发场景,存在缓存穿透,缓存击穿和缓存雪崩等问题。

缓存穿透

问题

当访问key不存在时候,请求会一直打在数据库上,增加了数据库的压力。

redis的几种并发场景的问题及解决策略_redis

解决策略

一 可以先缓存空值key

二 过滤不正常请求

缓存击穿

问题

当key过期后,大量请求直接压在数据库上,可能导致数据库崩溃

redis的几种并发场景的问题及解决策略_redis_02

解决策略

一 预加载热门的key

二 适当延长key的时间

三 设置锁(效率低)

redis的几种并发场景的问题及解决策略_数据库_03

缓存雪崩

问题

缓存的key大量过期,可能导致数据缓存更新失效

redis的几种并发场景的问题及解决策略_缓存_04

解决策略

一 将key失效的时间分散开

二 使用锁或者队列

三 定时更新key

标签:场景,策略,访问,数据库,redis,并发,缓存,key
From: https://blog.51cto.com/u_15063934/6032812

相关文章

  • redis事务
    redis事务不支持完整的acid机制,redis事务的流程分为组队和执行的流程,组队的过程某条命令发生错误,则全部报错,执行过程发生错误,仍继续执行,除了执行失败的命令之外,继续执行,没有......
  • redis事务
    redis事务不支持完整的acid机制,redis事务的流程分为组队和执行的流程,组队的过程某条命令发生错误,则全部报错,执行过程发生错误,仍继续执行,除了执行失败的命令之外,继续执行,没有......
  • Redis
    Redis缓存常见问题缓存穿透--查询一定不存在数据缓存穿透是指查询一个一定不存在的数据,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存......
  • 【Redis】配置文件详解
    目录单位:Redis配置对大小写不敏感!包含:搭建Redis集群时,可以使用includes包含其他配置文件网络:通用GENERAL快照(RDB):持久化,在规定的时间内,执行了多少次操作则会持久化到文件.r......
  • 【Redis】事务和乐观锁如何实现?
    目录前言Redis如何实现事务?正常执行事务放弃事务编译时异常,代码有问题,或者命令有问题,所有的命令都不会被执行运行时异常,除了语法错误不会被执行且抛出异常后,其他的正确命令......
  • 深入理解Java多线程(1) - Java并发编程的艺术
    今天深度学习一下《Java并发编程的艺术》的第1章并发编程的挑战,深入理解Java多线程,看看多线程中的坑。注意,哈肯的程序员读书笔记并不是抄书,而是将书中精华内容和哈肯的开发......
  • 【Redis】三大特殊数据类型
    目录Geospatial:地理位置Geospatial:地理位置城市经纬度查询:经纬度查询注意点1:两极无法直接添加,我们一般会下载城市数据,直接通过java程序一次性导入!注意点2:有效的......
  • 【Redis】五大数据类型
    目录String(字符串)添加、查询、追加、获取长度,判断是否存在的操作自增、自减操作截取、替换字符串操作设置过期时间、不存在设置操作mset、mget操作添加获取对象、getset操......
  • redis-desktop-manager-0.8.0.3844
    redis-desktop-manager-0.8.0.3844下载地址:https://www.aliyundrive.com/s/Y2fobkVjAdF链接:https://pan.baidu.com/s/1keQMs8Tiaj4liE6tgBe82A提取码:nrt4......
  • 【性能测试场景:负载,监听,压测,并发】
    一、普通性能场景普通线程组设置并发用户数线程数:需要设置的并发用户数并发用户数:受cpu的主频、分配的内存大小、操作系统(允许打开文件数量、开放的端口数量)的影响,一台......