`
woming66
  • 浏览: 56737 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

缓存失效算法比较

    博客分类:
  • Java
阅读更多
提到缓存,有两点是必须要考虑的:
1、缓存数据和目标数据的一致性问题。
2、缓存的过期策略(机制)。

其中,缓存的过期策略涉及淘汰算法。常用的淘汰算法有下面几种:
1、FIFO:First In First Out,先进先出
2、LRU:Least Recently Used,最近最少使用
3、LFU:Least Frequently Used,最不经常使用

注意LRU和LFU的区别。LFU算法是根据在一段时间里数据项被使用的次数选择出最少使用的数据项,即根据使用次数的差异来决定。而LRU是根据使用时间的差异来决定的。

一个优秀的缓存框架必须实现以上的所有缓存机制。例如:Ehcache就实现了上面的所有策略。
分享到:
评论

相关推荐

    移动数据库自适应缓存失效算法的研究 (2007年)

    通常采用基于广播的缓存失效算法来维护缓存的一致性 。传统的采用同步广播方式或异步广播方式的缓存 失效算法各有优缺点 。该文在分析传统算法优缺点和一些现有算法的基础上,提出了一种改进的基于计数器的自适应缓存...

    基于顺序检测的双队列缓存替换算法

    当前,缓存替换算法的研究工作主要集中在如何提高缓存系统命中率,忽略了通过降低缓存失效开销来提高缓存系统性能方面的研究.针对这一问题,本文提出了一种基于顺序检测的双队列缓存替换算法:本算法优先淘汰缓

    DNS服务器缓存失效过程的研究

    在DNS中,为了减轻根服务器的负担,递归服务器会缓存一部分资源记录(RR)。...通过对RR缓存失效过程进行理论分析和数学建模,研究了上述情况下影响递归服务器的QoRS的因素以及这些因素是如何影响QoRS的。

    确定自动机上的XML数据过滤算法改进 (2011年)

    XML数据过滤过程中存在的缓存失效会导致过滤效率的降低,因此研究基于确定有限自动机的XML数据过滤过程中如何减少缓存失效对于改进过滤的性能具有重要意义。对已有的Lazy DFA执行算法进行改进,引入了频繁访问区的概念...

    分布式缓存系统Memcached

    同时可以通过删除和设置失效时间来淘汰存放在内存的数据。  现在一些.NET开发人员开始放弃ASP.NET内置的缓存机制,转而使用Memcached——一种分布式的内存缓存系统。当运行在单独的Web服务器上,你可以很容易地...

    嵌入式系统/ARM技术中的片上多核处理器共享资源分配与调度策略研究综述(二)

    1 基于缓存分区的分配调度策略概述 ... 在单核单线程处理器中最为常用的缓存替换算法是LRU.LRU 不区分访存请求的线程来源,同等对待所有访存请求,每次发生缓存失效时替换最近最少访问的缓存块。LRU 在单线

    片上多核处理器共享资源分配与调度策略研究综述(二)

    1 基于缓存分区的分配调度策略概述... 在单核单线程处理器中为常用的缓存替换算法是LRU.LRU 不区分访存请求的线程,同等对待所有访存请求,每次发生缓存失效时替换近少访问的缓存块。LRU 在单线程环境中能够有效地提高

    Ad hoc无线网中DSR协议缓存优化的研究 (2006年)

    DSR协议是一种性能优越的按需路由协议,但是因为节点的移动和连接的破坏使得其缓存中的路由信息容易失效,目前主要的解决方法是:对一个连接或者一条路由设置生存期,通过时间限制机制来解决路由失效问题,但是这种方法还...

    Go语言的缓存库FreeCache.zip

    特性:可存储数以百万计条目零垃圾收集负荷高并发而且线程安全的访问纯 Go 语言实现支持对象失效近乎 LRU 的算法严格限制内存使用提供一个测试用的服务器,支持一些基本 Redis 命令示例代码:cacheSize := 1024*...

    back-end-architect:后台技术图谱

    缓存失效策略 当缓存需要被清理时(比如空间占用已经接近临界值了),需要使用某种淘汰算法来决定清理掉哪些数据。常用的淘汰算法有下面几种: FIFO:First In First Out,先进先出。判断被存储的时间,离目前最远的...

    bat_offer:2019-2020年互联网公司高频重点面试题

    深入理解Redis线程模型,熟练掌握Redis的核心数据结构的使用场景,熟悉各种缓存高并发的使用场景,比如缓存雪崩,缓存穿透,缓存失效,热点缓存重建等。熟悉常见消息中间件的使用,解决过各种消息通信常见的疑难问题...

    论文研究-企业环境P2P模型下的合作式Web缓存系统研究.pdf

    提出了一种高性能的合作式Web缓存系统(WebRing),包括一种基于连续哈希的Web对象路由模式,保证了对任意Web请求经过一次哈希计算且...解决了传统合作式缓存系统中多级转发和多重哈希计算造成的高时延和单点失效问题。

    网站架构技术

    分布式缓存的一致性hash算法 数据存储服务器集群的伸缩性设计 关系数据库集群的伸缩性设计 nosql数据库的伸缩性设计 随需应变:网站的可扩展性 构建可扩展的网站架构 利用分布式消息队列降低系统耦合性 ...

    MySQL优化之缓存优化(续)

    MySQL 内部处处皆缓存,等什么时候看了MySQL的源码,再来详细的分析缓存的是如何利用的。这部分主要将各种显式的缓存优化: ...但当缓存中的数据与硬盘中的数据不一致时,缓存就会失效。 mysql> show v

    基于现场可编程门阵列的高性能红外热成像系统

    提出了一种新的自适应两点非均匀性校正(ATPC)算法,该算法以快门为目标场景来实时更新校正参数,能有效克服红外焦平面阵列(IRFPA)响应随时间漂移导致的两点非均匀性校正算法失效问题。采用查找表结构来实现平台直方...

    codelf:一​​种搜索工具可帮助开发人员解决命名问题

    在计算机科学中只有两件难事:缓存失效和命名。-Phil Karlton 维基 外挂程式 VS Code的Codelf 安装 Codelf在VS Code Extension Marketplace上。 只需在VS Code EXTENSIONS窗格上搜索“ codelf”,然后单击安装。 ...

    mysql select缓存机制使用详解

    从某种程度可以提高查询的效果,但是未必是最优的解决方案,如果有的大量的修改和查询时,由于修改造成的cache失效,会给服务器造成很大的开销,可以通过query_cache_type【0(OFF)1(ON)2(DEMAND)】来控制缓存的开关....

    应用层查询语言PHP库.zip

    如果缓存对象过多,对于失效的算法与处理,要与业务对象的特性紧密的联合起来,通过事件来驱动对象的失效。 3。对于商业对象的缓存,必须要深刻分析对象的生命周期,业务特性。 4。对于数据不一致的风险,要有...

    网络工程师历年真题和答案附带考纲

    网络工程师知识点要求 说明: “I”、“II”和“III”表示掌握或熟悉的程度。...• 可靠性设计(失效安全、软失效) (I) • 部件可靠性及系统可靠性的分配及估计 (I) • RAS (可靠性、可用性和可维护性) (I)

Global site tag (gtag.js) - Google Analytics