首页 > 数据库 >redis缓存穿透、缓存击穿、缓存雪崩

redis缓存穿透、缓存击穿、缓存雪崩

时间:2025-01-07 14:11:01浏览次数:1  
标签:缓存 redis 数据库 击穿 穿透 雪崩 数据

redis缓存穿透、缓存击穿、缓存雪崩区别和解决方案

缓存穿透

描述:

​ 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求。由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。

在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。

如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导致数据库压力过大。

缓存击穿

描述:

*缓存击穿是指缓存中没有但数据库中有的数据(一般是缓存时间到期)*,这时由于并发用户特别多,同时读缓存没读到数据,又同时去数据库去取数据,引起数据库压力瞬间增大,造成过大压力。

缓存雪崩

描述:

缓存雪崩是指缓存中数据大批量到过期时间,而查询数据量巨大,引起数据库压力过大甚至down机。和缓存击穿不同的是, 缓存击穿指并发查同一条数据,缓存雪崩是不同数据都过期了,很多数据都查不到从而查数据库。

标签:缓存,redis,数据库,击穿,穿透,雪崩,数据
From: https://www.cnblogs.com/firsthelloworld/p/18657511

相关文章

  • JavaScript 实现支持过期时间的数据缓存功能
    JavaScript实现支持过期时间的数据缓存功能要在JavaScript中实现数据缓存功能并支持设置过期时间,可以使用localStorage、sessionStorage或内存对象(如Map或普通对象)来存储数据,并为每个缓存项设置一个过期时间。以下是一个简单的实现示例:JavaScript实现支持过期时间的数......
  • IDEA中连接redis服务器失败解决方案
    问题分析若在配置文档中redis服务器的ip地址,端口号,密码都正确情况下,IDEA还是无法连接redis服务器,可能是防火墙的问题,需要开放Redis端口解决办法(以MobaXterm为例)我们需要在MobaXterm窗口中,依次输入下列命令:1.检查系统防火墙工具sudosystemctlstatusfirewalld如......
  • [微服务]redis主从集群搭建与优化
    搭建主从集群单节点Redis的并发能力是有上限的,要进一步提高Redis的并发能力,就需要搭建主从集群,实现读写分离。1.主从集群结构下图就是一个简单的Redis主从集群结构:如图所示,集群中有一个master节点、两个slave节点(现在叫replica)。当我们通过Redis的Java客户端访问主从集......
  • Electron如何禁用缓存?
    在Electron中,禁用缓存主要涉及到两个方面:禁用HTTP缓存和禁用应用程序级别的缓存。以下是一些方法来实现这些目标:1.禁用HTTP缓存如果你希望在使用Electron进行前端开发时禁用HTTP缓存,你可以通过配置请求头来实现。具体来说,你可以在发起网络请求时设置Cache-Control头为no-cache,......
  • Caffeine本地高性能缓存组件
    1.简介Caffeine是一个用于Java应用程序的高性能缓存框架。它提供了一个强大且易于使用的缓存库,可以在应用程序中使用,以提高数据访问的速度和效率。下面是一些Caffeine缓存框架的主要特点:高性能:Caffeine的设计目标之一是提供卓越的性能。它通过使用高效的数据结构和优化的算......
  • Redis使用方法
    Redis是一个基于内存的key-value结构数据库,即非关系型数据库,具有高性能、丰富的数据类型、持久化、高可用性和分布式等特点。1:首先可以通过本地下载或服务器下载对应的Redis资源包win本地下载资源包:......
  • Redis可视化工具 Another Redis Desktop Manager工具使用详细教程(附下载链接)
    Redis可视化工具推荐:AnotherRedisDesktopManagerRedis是一种高性能的键值数据库,广泛应用于缓存和消息队列等场景。对于开发者来说,命令行工具固然强大,但操作繁琐。而一款高效易用的可视化工具可以极大地提升使用效率。本篇将为大家推荐一款开源、跨平台且功能强大的Redis可......
  • redis和数据库和消息队列
    NoSQL非关系型的数据库,键值、文档以及图形类型数据存储。天生支持分布式,数据冗余和数据分片等特性,提供可扩展的高可用高性能数据存储。redisRedis优缺点:读写快因为在内存中,只适合小数据量存储和读写因为在内存比磁盘小。Redis单线程很快的原因1、redis是纯内存操作2、采用......
  • 蓝易云 - Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化教程
    Nginx是一款高性能的开源Web服务器和反向代理服务器,它具有丰富的功能和模块,可以实现动静分离、压缩、缓存、黑白名单、跨域、高可用和性能优化。以下是Nginx一网打尽的教程:动静分离:动静分离是将动态资源(如PHP、Python脚本)和静态资源(如图片、CSS、JavaScript文件)部署在不同的......
  • Redis中的Red Lock/Redis锁
    1.2RedLock注意红锁的服务器是只存锁信息的和存业务信息的redis服务器是分开的步骤:首先集群部署Redis,官方推荐至少5个实例,不需要主从和哨兵,每个服务器是独立的,不存在信息同步。五个服务器不需要任何交互。客户端对五个实例依次申请锁,如果最终申请成功的数量超过半数(>=......