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

【redis】redis的缓存过期淘汰策略

【redis】redis的缓存过期淘汰策略


文章目录

  • 【redis】redis的缓存过期淘汰策略
  • 前言
  • 一、面试题
  • 二、redis内存满了怎么办?
    • 1、redis默认内存是多少?在哪查看?如何修改?
      • 在conf配置文件中可以查看 修改,内存默认是0
      • redis的默认内存有多少可以使用?注意设置为0即为不设限制
      • 一般生产上你如何配置? 四分之三
      • 如何修改?可以通过更改配置文件和命令方式修改
      • 什么命令可以查看redis内存使用情况?
    • 2、redis内存超出怎么办?
    • 3、结论
  • 三、往redis里写的数据怎么没了的?他是如何删除的?
    • 1、redis过期键的删除策略 不会立即删除
    • 2、三种不同的删除策略
      • 立即删除 对CPU不友好,拿时间换空间
      • 惰性删除 对内存不友好,只有再次访问才会删除,空间换时间
      • 以上两种方案都比较极端 -->定期删除
    • 3、 上述步骤都过堂了,还有漏洞嘛?
    • 4、redis缓存淘汰策略登场。。。
  • 四、redis缓存淘汰策略
    • 1、redis配置文件
    • 2、LRU和LFU算法有什么区别?
    • 3、有哪些(redis7版本)八种
    • 4、`上面总结`
    • 5、你平时用哪种?
    • 6、如何配置、修改
  • 五、redis缓存淘汰策略配置性能建议


前言

在这里插入图片描述


一、面试题

在这里插入图片描述


二、redis内存满了怎么办?

在这里插入图片描述

1、redis默认内存是多少?在哪查看?如何修改?

在conf配置文件中可以查看 修改,内存默认是0

在这里插入图片描述
在这里插入图片描述

redis的默认内存有多少可以使用?注意设置为0即为不设限制

在这里插入图片描述

一般生产上你如何配置? 四分之三

在这里插入图片描述

如何修改?可以通过更改配置文件和命令方式修改

设置为1M内存
在这里插入图片描述
在这里插入图片描述

什么命令可以查看redis内存使用情况?

在这里插入图片描述

2、redis内存超出怎么办?

会内存溢出
在这里插入图片描述

3、结论

在这里插入图片描述


三、往redis里写的数据怎么没了的?他是如何删除的?

在这里插入图片描述

1、redis过期键的删除策略 不会立即删除

在这里插入图片描述

2、三种不同的删除策略

立即删除 对CPU不友好,拿时间换空间

在这里插入图片描述

惰性删除 对内存不友好,只有再次访问才会删除,空间换时间

在这里插入图片描述
在这里插入图片描述

以上两种方案都比较极端 -->定期删除

在这里插入图片描述
在这里插入图片描述

3、 上述步骤都过堂了,还有漏洞嘛?

在这里插入图片描述

4、redis缓存淘汰策略登场。。。


四、redis缓存淘汰策略

在这里插入图片描述

1、redis配置文件

在这里插入图片描述

2、LRU和LFU算法有什么区别?

在这里插入图片描述

3、有哪些(redis7版本)八种

第一种为默认
在这里插入图片描述

4、上面总结

在这里插入图片描述

5、你平时用哪种?

在这里插入图片描述

6、如何配置、修改

在这里插入图片描述


五、redis缓存淘汰策略配置性能建议

避免存储大KEY 和 开启惰性淘汰
在这里插入图片描述


相关文章:

【redis】redis的缓存过期淘汰策略

【redis】redis的缓存过期淘汰策略 文章目录 【redis】redis的缓存过期淘汰策略前言一、面试题二、redis内存满了怎么办?1、redis默认内存是多少?在哪查看?如何修改?在conf配置文件中可以查看 修改,内存默认是0redis的默认内存有…...

ASP.NET动态Web开发技术第8章

第8章ASP.NET数据访问 一.预习笔记 1.SqlDataSource控件 SqlDataSource数据源控件支持连接SQL关系数据库,它使用SQL命令来检索和修改数据。通常将SqlDataSource数据源控件与数据绑定控件一起使用。 属性1:ID:当前数据源控件的唯一标识符 …...

【旋转编码器如何工作以及如何将其与Arduino一起使用】

在本教程中,我们将学习旋转编码器的工作原理以及如何将其与Arduino一起使用。您可以观看以下视频或阅读下面的书面教程。 1. 概述 旋转编码器是一种位置传感器,用于确定旋转轴的角度位置。它根据旋转运动产生模拟或数字电信号。 有许多不同类型的旋转编码器按输出信号或传感…...

Tre靶场通关过程(linpeas使用+启动项编辑器提权)

Tre靶场通关 通过信息收集获得到了普通用户账号密码,利用PEASS-ng的linpeas脚本进行提权的信息收集,根据已有信息进行提权。 靶机下载地址: https://download.vulnhub.com/tre/Tre.zip 信息收集 靶机IP探测:192.168.0.129 a…...

java多线程下

ThreadLocal ThreadLocal 有什么用?通常情况下,我们创建的变量是可以被任何一个线程访问并修改的。如果想实现每一个线程都有自己的专属本地变量该如何解决呢?JDK 中自带的ThreadLocal类正是为了解决这样的问题。 ThreadLocal类主要解决的就…...

使用无标注的数据训练Bert

文章目录 1、准备用于训练的数据集2、处理数据集3、克隆代码4、运行代码5、将ckpt模型转为bin模型使其可在pytorch中运用 Bert官方仓库:https://github.com/google-research/bert 1、准备用于训练的数据集 此处准备的是BBC news的数据集,下载链接&…...

《Netty》从零开始学netty源码(五十二)之PoolThreadCache

PoolThreadCache Netty有一个大的公共内存容器PoolArena,用来管理从操作系统中获得的内存,在高并发下如果所有线程都去这个大容器获取内存它的压力是非常大的,所以Netty为每个线程建立了一个本地缓存,即PoolThreadCache&#xff…...

放弃40k月薪的程序员工作,选择公务员,我来分享一下看法

我有一个朋友,拒绝了我为他提供的4万薪水的工作,去了一个体制内的银行,做程序员,即使薪水减半。他之前在北京一家大公司做程序员,一个月30k。当我开始创业时,我拉他来和我一起干,但那时我们太小…...

【MybatisPlus】高级版可视化、可配置 自动生成代码

今天看别人使用了一个更加智能的生成代码工具,可视化、可配置策略,非常方便,配置一次,在哪都可以使用,也不会跟项目藕合下面简单说一下使用方式。 1、介绍mybatis-plus-generator-ui 主要是封装了mybatis-plus-gener…...

【图像分割】【深度学习】Windows10下f-BRS官方代码Pytorch实现

【图像分割】【深度学习】Windows10下f-BRS官方代码Pytorch实现 提示:最近开始在【图像分割】方面进行研究,记录相关知识点,分享学习中遇到的问题已经解决的方法。 文章目录 【图像分割】【深度学习】Windows10下f-BRS官方代码Pytorch实现前言f-BRS模型运行环境安装1.下载源码并…...

2023/5/4总结

刷题&#xff1a; 第二周任务 - Virtual Judge (vjudge.net) 这一题用到了素筛,然后穷举即可 #include<stdio.h> #define Maxsize 500000 int a[Maxsize]; long long b[Maxsize]; long long max0; int sushu() {a[0]a[1]0;int i,j,k;for(i2,k0;i<Maxsize;i){if(a[i…...

electron+vue3全家桶+vite项目搭建【17】pinia状态持久化

文章目录 引入问题演示实现效果展示、实现步骤1.封装状态初始化函数2.封装状态更新同步函数3.完整代码 引入 上一篇文章我们已经实现了electron多窗口中&#xff0c;pinia的状态同步&#xff0c;但你会发现&#xff0c;如果我们在一个窗口里面修改了状态&#xff0c;然后再打开…...

java基础入门-05-【面向对象进阶(static继承)】

Java基础入门-05-【面向对象进阶&#xff08;static&继承&#xff09;】 13、面向对象进阶&#xff08;static&继承&#xff09;1.1 如何定义类1.2 如何通过类创建对象1.3 封装1.3.1 封装的步骤1.3.2 封装的步骤实现 1.4 构造方法1.4.1 构造方法的作用1.4.2 构造方法的…...

day12 IP协议与ethernet协议

目录 IP包头 IP网的意义 IP数据报的格式 IP数据报分片 以太网包头&#xff08;链路层协议&#xff09; IP包头 IP网的意义 当互联网上的主机进行通信时&#xff0c;就好像在一个网络上通信一样&#xff0c;看不见互联的各具体的网络异构细节&#xff1b; 如果在这种覆盖…...

蓝牙耳机哪款性价比高?2023蓝牙耳机性价比排行

随着蓝牙耳机的使用愈发频繁&#xff0c;蓝牙耳机产品也越来越多&#xff0c;蓝牙耳机的功能、价格、外观设计等都不尽相同。接下来&#xff0c;我来给大家推荐几款性价比高的蓝牙耳机&#xff0c;感兴趣的朋友一起来看看吧。 一、南卡小音舱Lite2蓝牙耳机 参考价&#xff1a…...

关于C语言的一些笔记

文章目录 May4,2023常量问题基本数据类型补码printf的字符格式控制关于异或、异或的理解赋值运算i和i的区别关系运算符 &#xff2d;ay5,2023逻辑运算中‘非’的理解逗号运算运算符的优先级问题三目运算 摘自加工于C技能树 May4,2023 常量问题 //定义常量 const float PI; PI…...

【Python入门知识】NumPy数组迭代及连接

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! 数组迭代 迭代意味着逐一遍历元素&#xff0c;当我们在 numpy 中处理多维数组时&#xff0c; 可以使用 python 的基本 for 循环来完成此操作。 如果我们对 1-D 数组进行迭代&#xff0c;它将逐一遍历每个元素。 实例 迭…...

我们公司的面试,有点不一样!

我们公司的面试&#xff0c;有点不一样&#xff01; 朋友们周末愉快&#xff0c;我是鱼皮。因为我很屑&#xff0c;所以大家也可以叫我屑老板。 自从我发了自己创业的文章和视频后&#xff0c;收到了很多小伙伴们的祝福&#xff0c;真心非常感谢&#xff01; 不得不说&#…...

C++之初识STL—vector

文章目录 STL基本概念使用STL的好处容器vector1.vector容器简介2.vector对象的默认构造函数3.vector对象的带参构造函数4.vector的赋值5.vector的大小6.vector容器的访问方式7.vector的插入 STL基本概念 STL(Standard Template Library,标准模板库)STL 从广义上分为: 容器(con…...

资讯汇总230503

230503 12:21 【放松身心亲近自然 自驾露营成旅游新风尚】今年“五一”假期&#xff0c;我国旅游业的快速恢复催生自驾露营休闲游、短途游、夜游等新型旅游产品提质升级。快速发展的新兴旅游业态&#xff0c;在促进旅游消费、培育绿色健康生活方式等方面发挥了积极作用&#xf…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言&#xff1a; 双亲委派机制对于面试这块来说非常重要&#xff0c;在实际开发中也是经常遇见需要打破双亲委派的需求&#xff0c;今天我们一起来探索一下什么是双亲委派机制&#xff0c;在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言&#xff1a; 类加载器 1. …...

GraphQL 实战篇:Apollo Client 配置与缓存

GraphQL 实战篇&#xff1a;Apollo Client 配置与缓存 上一篇&#xff1a;GraphQL 入门篇&#xff1a;基础查询语法 依旧和上一篇的笔记一样&#xff0c;主实操&#xff0c;没啥过多的细节讲解&#xff0c;代码具体在&#xff1a; https://github.com/GoldenaArcher/graphql…...

Unity VR/MR开发-VR开发与传统3D开发的差异

视频讲解链接&#xff1a;【XR马斯维】VR/MR开发与传统3D开发的差异【UnityVR/MR开发教程--入门】_哔哩哔哩_bilibili...

CppCon 2015 学习:Time Programming Fundamentals

Civil Time 公历时间 特点&#xff1a; 共 6 个字段&#xff1a; Year&#xff08;年&#xff09;Month&#xff08;月&#xff09;Day&#xff08;日&#xff09;Hour&#xff08;小时&#xff09;Minute&#xff08;分钟&#xff09;Second&#xff08;秒&#xff09; 表示…...