Day07:缓存-数据淘汰策略

news/2025/2/5 4:41:32/

Redis的数据淘汰策略有哪些 ? (key过期导致的)

在redis中提供了两种数据过期删除策略

第一种是惰性删除,在设置该key过期时间后,我们不去管它,当需要该key时,我们再检查其是否过期,如果过期,我们就删掉它,反之返回该key。

优点:对CPU友好,只有使用该key时才会进行过期检查,对于很多用不到的key不用浪费时间进行过期检查。

缺点:对内存不友好,如果一个key已经过期,但是一直没有使用,那么该key会一直存在内存中。

第二种是 定期删除,就是说每隔一段时间,我们就对一些key进行检查,删除里面过期的key(每次检查一定量的key,随着时间的推移会遍历一遍redis中所有的key,直到都检查一遍。可以确保,假如一个key过期了,一定会被删除)。

定期清理的两种模式:

  • SLOW模式是定时任务,执行频率默认为10hz,每次不超过25ms,设置这么短的清理时间是为了尽量少的占用主进程操作,可以通过修改配置文件redis.conf 的 hz 选项来调整这个次数。
  • FAST模式执行频率不固定,每次事件循环会尝试执行,但两次间隔不低于2ms,每次耗时不超过1ms。

定期删除的优点:可以通过限制删除操作执行的时长和频率来减少删除操作对CPU的影响。另外定期删除也能有效释放过期键占用的内存。

缺点:难以确定删除操作执行的时长和频率。

Redis的过期删除策略:惰性删除 + 定期删除两种策略进行配合使用


http://www.ppmy.cn/news/1569419.html

相关文章

PVE 中 Debian 虚拟机崩溃后,硬盘数据怎么恢复

问题 在 PVE 中给 Debian 虚拟机新分配硬盘后,通过 Debian 虚拟机开启 Samba 共享该硬盘。如果这个 Debian 虚拟机崩溃后,怎么恢复 Samba 共享硬盘数据。 方法 开启 Samba 共享相关知识:挂载硬盘和开启Samba共享。 新建一个虚拟机&#xf…

【游戏设计原理】97 - 空间感知

一、游戏空间的类型 将游戏设计中的空间设计单独提取出来,可以根据其结构、功能和玩家的交互方式划分为以下几种主要类型。这些类型可以单独存在,也可以组合使用,以创造更加复杂和有趣的游戏体验。 1. 线性空间 定义:空间设计是…

GPT与Deepseek等数据驱动AI的缺点

当前数据驱动的AI(包括GPT与Deepseek等各种大小模型)只进行了数/物理性的初步探索,尚未触及人机环境生态系统的复杂性。也就是说,当前的数据驱动型 AI,虽然在处理大量数据、解决特定任务方面取得了显著进展&#xff0c…

新站如何快速获得搜索引擎收录?

本文来自:百万收录网 原文链接:https://www.baiwanshoulu.com/8.html 新站想要快速获得搜索引擎收录,需要采取一系列有针对性的策略。以下是一些具体的建议: 一、网站内容优化 高质量原创内容: 确保网站内容原创、…

路径规划之启发式算法之二十九:鸽群算法(Pigeon-inspired Optimization, PIO)

鸽群算法(Pigeon-inspired Optimization, PIO)是一种基于自然界中鸽子群体行为的智能优化算法,由Duan等人于2014年提出。该算法模拟了鸽子在飞行过程中利用地标、太阳和磁场等导航机制的行为,具有简单、高效和易于实现的特点,适用于解决连续优化问题。 更多的仿生群体算法…

Mac本地部署DeekSeek-R1下载太慢怎么办?

Ubuntu 24 本地安装DeekSeek-R1 在命令行先安装ollama curl -fsSL https://ollama.com/install.sh | sh 下载太慢,使用讯雷,mac版下载链接 https://ollama.com/download/Ollama-darwin.zip 进入网站 deepseek-r1:8b,看内存大小4G就8B模型 …

毕业设计:基于卷积神经网络的鲜花花卉种类检测算法研究

目录 前言 课题背景和意义 实现技术思路 一、算法理论基础 1.1 卷积神经网络 1.2目标检测算法 二、 数据集 2.1 数据集 2.2 数据扩充 三、实验及结果分析 3.1 实验环境搭建 3.2 模型训练 最后 前言 📅大四是整个大学期间最忙碌的时光,一边要忙着备考或…

caddy2配置http_basic用于验证用户名密码才允许访问页面

参考: basicauth (Caddyfile指令) — Caddy v2中文文档 1,查看caddy是否已经包含了Basic Auth插件 命令:caddy list-modules | grep http_basic 如果显示: http.authentication.providers.http_basic 则代表包含 Basic Auth 模…