如果有面试官问Redis中的数据已经过期为什么还占用这内存?

它是因为Redis本身的过期策略和缓存淘汰机制所导致的。

说说Redis的过期策略和缓存淘汰机制

先来说说Redis的过期策略,Redis的过期策略其实分为两种:被动方式和主动方式
被动方式:当请求访问某个过期key时,该key会主动删除。这也有一个问题有些过期key可能永远也不会被访问。
主动方式:定期随机抽取一些key,然后删除过期的部分,如果发现过期部分大于1/4,则继续随机抽取进行删除。

接着是缓存淘汰机制
由于定期删除+惰性删除并不能解决所有过期的数据,长时间的堆积很可能造成内存耗尽,所以缓存淘汰机制能够解决这个问题
(1)allkeys-lru:当内存不足以容纳新数据时,移除最近最少使用的数据
(2)volatile-ttl:当内存不足以容纳新数据时,优先移除最早过期的key
(3)allkeys-random:回收随机的key
…剩下的不常用,一般情况下allkeys-lru最为常用。如果满足幂定律分布使用allkeys-lru最好,如果是循环访问使用allkeys-random最为合适。

【Redis系列】面试官:Redis中的数据已经过期,为什么还占用这内存?相关推荐

  1. Redis系列(五):Redis的过期键删除策略

    Redis系列(五):Redis的过期键删除策略 - 申城异乡人 - 博客园 本篇博客是Redis系列的第5篇,主要讲解下Redis的过期键删除策略. 本系列的前4篇可以点击以下链接查看: Redis ...

  2. 十年项目经验面试官亲传大数据面试__大数据面试独孤九剑

    文章目录 引言 第一剑「总决式」功能概述(三句话左右概况,简明扼要) 第二剑「破剑式」项目周期(开发时长和人员配置) 开发时长: 人员配置 第三剑「破刀式」技术架构(技术选项及框架版本) 第四剑「破枪 ...

  3. 求职面试时,如何从面试官话语中揣测是否被录用?

    求职面试时,如何从面试官话语中揣测是否被录用? 面试官: 非常感谢您来应聘,我们会尽快联系你,最晚明天下班前给您答复. 基本上可以肯定就是你了,除非遇到特殊情况,HR可能在你没回到家就给你打电话,通知 ...

  4. 计算机视觉系列3.1 VGGNet中的数据预处理

    计算机视觉系列3.1 VGGNet中的数据预处理 本文链接:https://blog.csdn.net/weixin_44633882/article/details/87705734 ps:< ...

  5. java阿里面试官直接告诉你录取答案,你还在犹豫那就晚了

    java阿里面试官直接告诉你录取答案,你还在犹豫那就晚了 2022-03-11 16:49·LBL-埃文斯 前言 阿里巴巴面试规则 1.第一轮面试: 第一轮面试通常是电话面试,面试官会提前打电话约定面 ...

  6. 阿里面试官Redis把我问到哑口无言…

    Redis在国内各大公司都很热门,比如新浪.阿里.腾讯.百度.美团.小米等.Redis也是大厂面试最爱问的,尤其是Redis客户端.Redis高级功能.Redis持久化和开发运维常用问题探讨.Redi ...

  7. 利用redis缓存对 list集合中的数据 进行分页操作(一)

    先说 存储的结构: 这里做了两块缓存  绿色是存储索引的缓存  黑色是存数据的缓存 翻页时需要两个参数  向上查询/或向下查询    还一个是   从第二页开始查询时需要一个索引的参数 有了这两个参数 ...

  8. 面试官:Redis分布式锁解决方案是什么?

    今天博主在这片文章中主要给大家讲下Redis分布式锁的原理以及解决方案 学到三连呦 1.Redis分布式锁原理 1.1.简述 我们知道分布式锁的特性是排他.避免死锁.高可用.分布式锁的实现可以通过数据 ...

  9. 面试官:一千万数据,怎么快速查询?

    今日推荐 这 9 个 Java 开源项目 yyds,你知道几个?阿里技术专家推荐的20本书,免费送!K8S 部署 SpringBoot 项目(一篇够用)妙用Java 8中的 Function接口 消灭 ...

最新文章

  1. python全栈-Day 2
  2. bzoj4006: [JLOI2015]管道连接
  3. python模块之keyword
  4. 国内云存储产品应用简介
  5. es数据频繁的更新_es之文档更新过程中并发冲突问题
  6. 18款 非常实用 jquery幻灯片图片切换
  7. 7 SD配置-企业结构-定义-定义信贷控制范围
  8. redis在php上使用教程,Redis在PHP的一些使用方法
  9. python close_wait_TCP time_wait close_wait问题(可能是全网最清楚的例子)
  10. vim 的复制粘贴剪切
  11. 用数据分析福尔摩斯探案集,里面有你不曾发现的秘密
  12. sklearn 相似度矩阵_利用sklearn计算文本相似性
  13. 《麦肯锡方法》第10章 演示汇报-思维导图
  14. B站视频下载 bilibili 哔哩哔哩
  15. pandas入门与数据准备与简单筛选统计
  16. Android 自动换行添加控件
  17. 夏天开水果店怎么保存,水果店水果的保存方法
  18. pbl和sbl_ROKSO、SBL、XBL、PBL、DBL 是什么意思?
  19. mongo启动报错:ERROR: child process failed, exited with error number 1
  20. intelliJ IDEA启用快速定位文件图标

热门文章

  1. WPF ControlTemplate TemplateBinding
  2. 保留关键字 (Transact-SQL) user 也是,哎
  3. [转]GridView导出Excel总结
  4. 漏洞挖掘 符号执行_简述符号执行
  5. 打印机可以打印不能扫描怎么弄_为什么打印机可以通过电脑打印可不能扫描呢...
  6. python 调用另一个py_跟我自学python 第9章 类(9.4.6 在一个模块中导入另一个模块)...
  7. java list clear 垃圾回收_list.clear()vs list = new ArrayList Integer(); [重复]
  8. java是如何写入文件的
  9. android服务器概念,Android_tv_metro
  10. python序列类型唯一的映射类型_python2.x学习笔记(8)-映射和集合类型