码迷,mamicode.com
首页 > 编程语言 > 详细

缓存算法:LRU、LFU、FIFO

时间:2018-12-18 02:21:41      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:一个   可能性   nbsp   type   sed   http   并且   进入   一段   

  •  
  • LRU全称是Least Recently Used,即最近最久未使用的意思。如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。也就是说,当限定的空间已存满数据时,应当把最久没有被访问到的数据淘汰。
  • LFU(Least Frequently Used)最近最少使用算法。它是基于“如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小”的思路。
    注意LFU和LRU算法的不同之处,LRU的淘汰规则是基于访问时间,而LFU是基于访问次数的。
  • FIFO(First in First out),先进先出。其实在操作系统的设计理念中很多地方都利用到了先进先出的思想,比如作业调度(先来先服务),为什么这个原则在很多地方都会用到呢?因为这个原则简单、且符合人们的惯性思维,具备公平性,并且实现起来简单,直接使用数据结构中的队列即可实现。在FIFO Cache设计中,核心原则就是:如果一个数据最先进入缓存中,则应该最早淘汰掉。


参考:http://www.cnblogs.com/dolphin0520/p/3749259.html

缓存算法:LRU、LFU、FIFO

标签:一个   可能性   nbsp   type   sed   http   并且   进入   一段   

原文地址:https://www.cnblogs.com/shengulong/p/10134806.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!