Redis学习12:删除策略:过期数据、数据删除策略、逐出策略

举报
bdi洲 发表于 2022/05/20 01:23:37 2022/05/20
【摘要】 Redis中的数据特征 过期的数据真的删除了吗?过期数据是指曾经有效的数据,并不是立马被删除的。 删除策略 定时删除、惰性删除、定期删除 过期数据时如何存储的 首先需要明白时效性数据的存储结...

Redis中的数据特征

在这里插入图片描述

  • 过期的数据真的删除了吗?
  • 过期数据是指曾经有效的数据,并不是立马被删除的。

删除策略

  • 定时删除、惰性删除、定期删除

过期数据时如何存储的

  • 首先需要明白时效性数据的存储结构
  • 在这里插入图片描述
  • 删除策略是维护的紫色区域:expires。

数据删除策略的目标

  • 内存占用与cpu占用之间寻找一种平衡,顾此失彼都会造成整体的Redis性能的下降,甚至引发服务器的宕机内存泄露!

定时删除

  • 规定时间,设置一个定时器,当key设置有过期时间,且过期时间到达时,由定时器的任务立即对key的删除操作
  • 不仅在redis存储空间删掉了key,还在expires区域中把field和value都删掉了。

在这里插入图片描述

  • 优缺点:
    在这里插入图片描述
  • 总结:用处理器性能,也就是CPU换内存(存储空间)。也就是拿时间换空间。
  • 更看重内存。

惰性删除

在这里插入图片描述

  • 如果已经过期了,就会删除掉了,然后返回不存在!
  • 在这里插入图片描述

定期删除

  • 前面两种策略比较极端,要么时间不够要么cpu不够。

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

  • 0x是过期数据的存储地址,然后后面的数字是过期的时间。

4【】0

  • W是可以自己定义的,到配置文件中去设定这个东西。

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

  • 这个是阶段性的去清理,折中方案。定期是可以理解为轮询的思想来做。

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

逐出算法

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

  • LRU是指 最近使用最少的。 age已经4s没用了。所以是他。
  • 同时需要注意检查易失数据集进行操作的。

在这里插入图片描述

  • 如果禁止驱逐数据那么容易oom。
  • 一般选用lru。
  • 在配置文件中进行配置即可。

在这里插入图片描述

  • 演示这个操作需要大量的操作来冲击内存。

在这里插入图片描述

  • 这个就是hits和miss命中和丢失的策略。

在这里插入图片描述

总结

在这里插入图片描述

文章来源: blog.csdn.net,作者:洲的学习笔记,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_51484460/article/details/120697193

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。