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

手机怎么做弹幕小视频网站淘宝上网站建设好便宜

手机怎么做弹幕小视频网站,淘宝上网站建设好便宜,网站建设的基本步骤,河北外贸网站建设前言 本文主要说明在Redis面临key过期和内存不足的情况时,可以采用什么策略进行解决问题。 Redis中是如何应对过期数据的 正如我们知道的Redis是基于内存的、单线程的一个中间件,在面对过期数据的时候,Redis并不会去直接把它从内存中进行剔…

前言

本文主要说明在Redis面临key过期和内存不足的情况时,可以采用什么策略进行解决问题。

Redis中是如何应对过期数据的

正如我们知道的Redis是基于内存的、单线程的一个中间件,在面对过期数据的时候,Redis并不会去直接把它从内存中进行剔除,因为Redis是单线程的,如果出现了过期key就立马去删除,可能会影响到主要的业务的执行

在Redis中提供了以下两种删除过期键值的策略

惰性删除

工作原理: 惰性删除就出现过期了也不去管他,等某个请求访问到这条数据的时候,判断是否过期,过期就删除,并返回null
优点: 每次访问过期数据才会进行删除操作,占用相对较少的系统资源
缺点: 过期数据占用的空间清理不及时,导致空间利用率低,浪费内存空间

定期删除

工作原理: 每隔一段时间,检测数据库,随机删除一些过期数据
优点: 通过限制删除操作的时长和频率,来减少删除操作对主业务的影响,同时也能减轻内存空间的压力
缺点: 没有惰性删除的系统资源占用少,本身还是存在一定的空间浪费

定期删除工作流程

举个简单的例子:

  1. 定期中从设置过期时间的key字典中随机取出一定数量的key,
  2. 删除一定数量中过期key,
  3. 如果这个过期key占25%,重复1步骤

为了防止出现循环过度造成线程卡死,redis中设置了默认扫描时间25ms,流程图如下:
在这里插入图片描述

Redis的内存淘汰策略

当Redis中的内存使用超过最大使用内存数后,会使用内存淘汰策略删除 来保证redis的正常运行

  1. noeviction(不淘汰): 当内存不足以容纳新写入数据时,新写入操作会报错。
  2. allkeys-lru(最近最少使用): 从键空间中选择最近最少使用的键淘汰。
  3. allkeys-lfu(最不经常使用): 从键空间中选择最不经常使用的键淘汰。
  4. allkeys-random(随机淘汰): 从键空间中随机选择键淘汰。
  5. volatile-lru(最近最少使用): 从设置了过期时间的键中选择最近最少使用的键淘汰。
  6. volatile-lfu(最不经常使用): 从设置了过期时间的键中选择最不经常使用的键淘汰。
  7. volatile-random(随机淘汰): 从设置了过期时间的键中随机选择键淘汰。
  8. volatile-ttl(最短过期时间): 从设置了过期时间的键中选择离过期时间最近的键淘汰。

这些淘汰策略可以通过在 Redis 配置文件或在运行时通过相关命令进行配置。根据具体业务需求和数据访问模式,选取合适的淘汰策略可以提高 Redis 的性能和内存利用率。

实际是三大类,noeviction、allkey-xxx、volatile-xxx

LRU 与 LFU

LRU (Last Recently Used)

LRU 策略按照最近最少使用的原则淘汰数据。当缓存空间不足时,会优先淘汰最长时间未被访问的数据。LRU 策略维护一个访问时间顺序的队列,每次访问数据时,将数据移动到队列的末尾。当需要淘汰数据时,从队列的头部淘汰最久未被访问的数据

LFU (Last Frequently Used)

LFU 策略按照最不经常使用的原则淘汰数据。LFU 策略维护每个数据被访问的频率信息,当缓存空间不足时,会优先淘汰访问频率最低的数据。LFU 策略需要为每个数据维护一个访问频率计数器,每次访问数据时,将对应的计数器值加一。当需要淘汰数据时,选择访问频率最低的数据进行淘汰

主要区别

  1. LRU 按照最近最少使用进行淘汰,LFU按照最不经常使用进行淘汰。
  2. LRU维护一个顺序表,LFU维护一个计数器
  3. LRU关注访问顺序,LFU关注访问频率
  4. LRU假设最近被访问的可能会被再次访问,LFU假设访问次数最少的键是最不常用的
以上是本文全部内容
感谢阅读
http://www.sczhlp.com/news/71736/

相关文章:

  • 网站内容转载网站建设合同不给版权
  • 域名可以做网站app小程序开发团队
  • 用discuz做的网站央视叫停校外培训机构
  • 厦门高端网站案例linux代码做网站
  • 泰安网站建设策划方案自做网站打开速度慢
  • 广东营销网站建设服务公司青岛房产网站建设
  • 如何寻找一批做网站的公司aspcms网站打不开
  • 网站权重对优化的作用wordpress 无法删除评论
  • 照片管理网站模板下载2023年7 8月十大新闻
  • 网站推广协议重生做网站的小说
  • 网站首页该怎么做建设工程合同甲方
  • 站长工具端口网站地址验证失败
  • 深圳网站建设公司哪里好校园网站开发类论文
  • 建筑工程素材资源网站南通中小企业网站制作
  • 汽车行业市场分析那个网站做的好浙江台州做网站的公司有哪些
  • 网站的代运营手机网站用什么语言开发
  • 网站建设培训深圳网站建设视屏
  • C++ 主流编译器及对应标准库实现
  • Redis实现消息队列
  • asp模板网站修改公司网站进不去qq空间
  • 有哪些网站交互效果做的好的 l设计是做什么的
  • 专业做制作网站如何确定网站建设 栏目
  • 大连网站建设意动科技公司wordpress升级 没有ftp
  • c2c电商网站中小型网站建设效果
  • bfhk3_文章1
  • 自然语言处理工具开发与生产实践
  • 线程间共享数据
  • 腾讯云服务器如何安装 zsh oh-my-zsh(解决 github 连接问题)
  • 【运维自动化-标准运维】各类全局变量使用说明(上)
  • 东铁匠营网站建设公司wordpress主题打不开