LRU是什么?LRU缓存淘汰机制的原理和应用

LRU是什么?

RUL是一种缓存淘汰算法,是一种缓存淘汰机制

缓存

缓存分为两种硬件的缓存软件的缓存

  1. 硬件的缓存也是CPU缓存,是位于CPU和内存之间的临时的存储器,包括一级缓存,二级缓存,三级缓存

  2. 软件的缓存包括内存缓存数据库缓存和**网络缓存(浏览器缓存)**等等

缓存淘汰机制

大家都知道,缓存不是无限的资源,甚至是稀缺的。那么当缓存被用满的时候,就需要淘汰掉一些不要的数据,以什么样的方法判断淘汰哪些数据就是缓存淘汰机制

常见的缓存淘汰机制有:

  1. 先进先出策略 FIFO(First In,First Out)
  2. 最少使用策略 LFU(Least Frequently Used)
  3. 最近最少使用策略 LRU(Least Recently Used)

这个其实很好理解,比方说微信或者qq聊天记录很文件,对你来说最常用的就是最近最常使用的文件和聊天记录,那么最不重要的就是最近最少使用的文件和聊天记录

所以LRU是最常用的缓存淘汰算法


LRU的原理

其实非常简单,拿链表来实现的话就是:

  1. 当用户在访问一个数据的时候,首先进行链表的遍历;遍历到相应的数据的结点的时候,将其从原来的位置删除,然后再插入到链表的头部。

  2. 如果没有之前没有缓存的数据,则直接将结点插在数据头部

  3. 如果缓存满了,插入多少数据就从尾部开始删除

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值