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

redis之缓存淘汰策略

1.查看redis的最大占用内存

使用redis-cli命令连接redis服务端,输入命令:config get maxmemory
在这里插入图片描述
输出的值为0,0代表redis的最大占用内存等同于服务器的最大内存。

2.设置redis的最大占用内存

编辑redis的配置文件,并重启redis服务
在这里插入图片描述

3.生产环境中redis的最大使用内存配置多少?

正常情况下配置为服务器内存的四分之三。

4.如果redis内存满了会出现什么情况

先使用config set maxmwmery 1命令将redis的最大使用内存设置为1字节
需要注意config set maxmwmery命令重启就失效了,想要永久修改,需要编辑redis的配置文件并重启redis服务。
在这里插入图片描述
然后执行set命令
在这里插入图片描述
当value的值超过redis的最大内存,会抛出OOM异常

5.redis过期键的删除策略

(1)立即删除
对cpu不够友好,用处理器性能换取内存(时间换空间)。
(2)惰性删除
数据达到过期时间,不做处理,等下次访问该数据时,如果未过期,返回数据;发现已过期,删除,返回不存在。
惰性删除没有时效性,可能会造成内存资源的浪费。
惰性删除对内存不够友好,用内存空间换取处理器性能(空间换时间)
redis开启惰性删除配置
在这里插入图片描述
(3)定期删除
定期删除策略每隔一段时间执行一次删除过期键操作并通过限制删除操作执行时长和频率来减少删除操作对CPU时间的影响
举例:redis每隔100ms抽取部分key检查是否过期,过期则删除
定期删除就是基于立即删除和惰性删除的折中的一种删除算法
(4)总结
上述的删除策略都有弊端
当使用定期删除时,过期的key可能从来没有被抽到
当使用惰性删除时,过期的key可能从来没有被访问到
这样大量过期的key堆积在内存中,导致redis内存空间紧张

6.redis共有多少种缓存淘汰策略

redis共有8种缓存淘汰策略(详见redis配置文件)
redis默认的删除策略是noeviction在这里插入图片描述> 在这里插入图片描述

7.lru和lfu算法的区别是什么

LRU means Least Recently Used(淘汰最长时间没被使用到的)
LFU means Least Frequently Used(淘汰一定时间段内被访问次数最少的)
举例:
在这里插入图片描述

8.生产中redis的过期策略使用哪一种

简单地说:当不知道自己的业务场景适合哪一种删除策略时,可以使用allkeys-lru 策略。在这里插入图片描述

9.redis配置淘汰策略

编辑redis配置文件,并重启redis服务
在这里插入图片描述

10.redis的淘汰策略什么时候会触发

当Redis设置了最大内存限制(通过 maxmemory 配置项),并且当前使用的内存达到了这个限制,Redis会根据设定的淘汰策略来移除一些键,以便为新的键腾出内存。

相关文章:

redis之缓存淘汰策略

1.查看redis的最大占用内存 使用redis-cli命令连接redis服务端,输入命令:config get maxmemory 输出的值为0,0代表redis的最大占用内存等同于服务器的最大内存。 2.设置redis的最大占用内存 编辑redis的配置文件,并重启redis服务…...

CMake/C++:一个日志库spdlog

项目仓库 GitHub - gabime/spdlog: Fast C logging library.Fast C logging library. Contribute to gabime/spdlog development by creating an account on GitHub.https://github.com/gabime/spdlog 知乎参考贴 https://zhuanlan.zhihu.com/p/674073158 先将仓库clone一下 然…...

rig——管理不同R语言版本的工具

在Python中,我可以用Conda去管理多个版本的Python,包括一些Python模块,因此想在R语言中也找一个类似的工具。 之前在Mac上,有一个名为 Rswitch 的R语言版本管理工具,可以管理不同版本的R以及相应的R包。 现在想在Win…...

Java内存模型详解

1. 引言 在Java中,内存模型是非常重要的概念,它涉及到线程之间如何共享数据以及保证数据的一致性。了解Java内存模型对于开发高质量的多线程程序是至关重要的。 本篇博客将详细介绍Java内存模型的概念、原则、规则以及相关的概念和术语。同时&#xff…...

空气能热泵热水器

空气能热泵热水器压缩机把低温低压气态冷媒转换成高压高温气态,压缩机压缩功能转化的热量为q1,高温高压的气态冷媒与水进行热交换,高压的冷媒在常温下被冷却、冷凝为液态。这过程中,冷媒放出热量用来加热水,使水升温变…...

计算机毕业设计选题推荐-消防站管理系统-社区消防管理系统-Java/Python项目实战

✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…...

移动UI:新手指引页面,跟着指引不迷路。

移动端新手指引在提供用户引导、提升用户体验、提高用户留存率、促进功能使用和降低用户流失率方面都有积极的作用。 移动端新手指引在应用程序或移动网站中有以下几个作用: 1. 提供用户引导: 新手指引可以帮助用户快速了解应用程序或移动网站的功能和…...

数据库MySQL基础

目录 一、数据库的介绍 1.数据库概述 (1)数据的存储方式 (2)数据库 2.常见数据库排行榜 二、数据库的安装与卸载 1.数据库的安装 2.数据库的卸载 三、数据库服务的启动与登录 1.Windows 服务方式启动 (1&…...

AUTOSAR_EXP_ARAComAPI的5章笔记(3)

5.3.4 Finding Services Proxy Class提供类(静态)方法来查找“连接”的服务实例。由于服务实例的可用性本质上是动态的(因为它有一个生命周期),所以ara::com提供了如下两种不同的方法来实现“FindService ”: StartFindService是一个类方法,它在后台启…...

【Godot4.3】基于纯绘图函数自定义的线框图控件

概述 同样是来自2023年7月份的一项实验性工作,基于纯绘图函数扩展的一套线框图控件。初期只实现了三个组件,矩形、占位框和垂直滚动条。 本文中的三个控件类已经经过了继承化的修改,使得代码更少。它们的继承关系如下: 源代码 W…...

申万宏源证券完善金融服务最后一公里闭环,让金融服务“零距离、全天候”

在数字化转型的浪潮中,申万宏源作为金融行业的先锋,持续探索科技如何赋能金融服务,以提升企业效率并优化客户服务体验。面对日益增长的视频化需求,传统的图文形式已难以满足市场与用户的新期待。为了应对这一挑战,申万…...

无需更换摄像头,无需施工改造,降低智能化升级成本的智慧工业开源了。

智慧工业视觉监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上…...

系统架构师考试学习笔记第三篇——架构设计高级知识(19)嵌入式系统架构设计理论与实践

本章考点: 第19课时主要学习嵌入式系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分)。在历年考试中,案例题对该部分内容都有固定考查,综合知识选择题目中有固定分值…...

centos8stream 修改为阿里云yum源

centos8stream 官方已经不再维护,导致该系统官方源实效,可以使用阿里云源进行替换 阿里云文档:centos-vault镜像_centos-vault下载地址_centos-vault安装教程-阿里巴巴开源镜像站 (aliyun.com) 咱们只需要执行下面命令,即可替换官…...

python转换并提取pdf文件中的图片

#安装fitz包 pip install pymupdf 脚本如下所示: import fitz import re import os import time import sysarguments sys.argvfor arg in arguments:print(arg)def file_name_list(base_dir):for i, j, k in os.walk(base_dir):name [i.replace(.pdf, ) for i …...

【MySQL】MySQL常用的数据类型——表的操作

前言: 🌟🌟本期讲解关于MySQL常用数据类型,表的简单使用,希望能帮到屏幕前的你。 🌈上期博客在这里:http://t.csdnimg.cn/wwaqe 🌈感兴趣的小伙伴看一看小编主页:GGBondl…...

自然语言处理系列五十三》文本聚类算法》文本聚类介绍及相关算法

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 自然语言处理系列五十三文本聚类算法》文本聚类介绍及相关算法K…...

计算机网络(一) —— 网络基础入门

目录 一,关于网络 二,协议 2.1 协议是什么,有什么用? 2.2 协议标准谁定的? 2.3 协议分层 2.4 OSI 七层模型 2.5 TCP/IP 四层模型 三,网络传输基本流程 3.1 局域网中两台主机通信* 3.2 报文的封装与…...

从监控到智能:EasyCVR视频汇聚平台助力加油站安全监管升级转型

随着科技的不断进步,视频监控技术在各个行业的应用日益广泛,尤其在加油站这一关键领域,视频智能监管系统的应用显得尤为重要。TSINGSEE青犀视频EasyCVR视频汇聚平台作为一款基于“云-边-端”一体化架构的视频融合与AI智能分析平台&#xff0c…...

日志服务管理

系统日志管理 sysklogd 系统日志服务 在 CentOS5 以及之前的发行版中,其采用的 sysklogd 服务来记录和管理系统日志的。 sysklogd 服务有两个模块: klogd: 用于记录 linux kernel 相关的日志 syslogd:用于记录用户空间应用日志…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

跨链模式:多链互操作架构与性能扩展方案

跨链模式&#xff1a;多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈&#xff1a;模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展&#xff08;H2Cross架构&#xff09;&#xff1a; 适配层&#xf…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在运动类应用中&#xff0c;运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据&#xff0c;如配速、距离、卡路里消耗等&#xff0c;用户可以更清晰…...

云原生安全实战:API网关Kong的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关&#xff08;API Gateway&#xff09; API网关是微服务架构中的核心组件&#xff0c;负责统一管理所有API的流量入口。它像一座…...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面&#xff0c;gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress&#xff0c;说明目标所使用的cms是wordpress&#xff0c;访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

华为OD机考-机房布局

import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号&#xff08;第三种&#xff09;后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...