`

[求助]有没有哪个缓存组件支持 基于访问频率的清理策略

 
阅读更多
目前缓存清理策略几乎都是基于 存活期 和 活跃期 还有缓存队列来做的.

活跃期: 某数据加入缓存(第一次被访问),到最后一次被访问的时间.
非活跃期:缓存内的某数据最后一次被访问的时间,到当前监控时间.
存活期 = 活跃期 + 非活跃期.
缓存队列 : 对缓存的大小进行限制,并且对缓存内的数据的最后一次被访问时间 和 加入队列的时间进行记录.


基于存活期策略: 当数据(或对象)放入缓存的时间超过某个数值时,清除该数据.
基于活跃期策略: 当缓存中的数据没有被访问的时间超过某个数值时,清除该数据.
基于缓存队列策略: 当缓存已经满了,每向缓存内增加一条数据,就清理一条最久没被访问的数据(或者偷懒,直接清除最先加入的数据).

这些比较好理解,而且已经有很好的实现了.


但是现在有这样一个需求,类似于"基于访问频率的清理策略":

也就是说再额外记录一下 缓存内的数据被访问的次数.
计算出缓存数据在 存活期内的访问频率 以及在活跃期内的访问频率.

然后根据 缓存大小 该数据存活期内的访问频率 和 活跃期内的访问频率.

这三者来判断是否清理该数据.

想问一下,现在有没有能很好的支持该策略的缓存组件?
当然我知道自己用各种map table list... 写一个出来也不是太难.

但有点着急,所以想找个现成的.

:(

谢谢大家了 先
分享到:
评论

相关推荐

    webapi接口缓存组件

    常见的有过期时间、基于访问频率的更新、LRU(Least Recently Used)等。过期时间可以确保数据不会长时间未更新,而访问频率和LRU策略则可以根据实际使用情况动态调整。 4. 缓存注入:在WebAPI控制器或操作方法上...

    Python-一个简单小巧可定制化轻量级的基于内存的Python缓存组件

    标题中的“Python-一个简单小巧可定制化轻量级的基于内存的Python缓存组件”指的是一种Python库,它设计用于实现简单的内存缓存功能。这类组件在处理大量数据或者需要频繁读取已计算结果时特别有用,因为它可以减少...

    基于FPGA的DDR3高速图像缓存策略.pdf

    本文探讨了基于现场可编程门阵列(FPGA)技术,结合DDR3高速动态随机访问存储器(Dynamic Random Access Memory)来实现高速图像缓存策略的研究。DDR3以其高带宽和低功耗特点,成为高速数据缓存的理想选择。在设计中...

    车联网中基于NDN的缓存策略综述.pdf

    作者指出,没有一种缓存策略适用于所有的场景,所以不同的策略可以根据车联网的应用需求、车辆的分布特征、数据的类型和更新频率等因素综合考虑,选择最合适的缓存策略。 综上所述,NDN缓存策略的研究对于提高车...

    vbsIE缓存一键清理

    Internet Explorer(IE)是微软公司开发的网页浏览器,它有一个本地缓存系统,用于存储用户访问过的网页的静态资源,如图片、CSS样式表和JavaScript文件等,以提高再次访问这些页面时的加载速度。随着时间的推移,...

    THINKPHP缓存清理器

    需要注意的是,清理缓存可能会导致用户短暂失去缓存中的数据,因此在生产环境中执行此操作时,应选择低峰时段或者配合合理的缓存更新策略。 总的来说,理解并熟练掌握ThinkPHP的缓存机制,以及合理利用"THINKPHP...

    易语言电脑缓存清理助手源码

    【易语言电脑缓存清理助手源码】是一个使用易语言编程开发的软件,旨在帮助用户快速清理计算机中的缓存垃圾,提升系统运行效率。易语言是中国本土开发的一种面向对象的、可视化的编程语言,它的特点是语法简洁,适合...

    详解Vue中组件的缓存

    3. 的include和exclude属性:有时候我们不希望所有的组件都被缓存,这时可以通过组件的include和exclude属性来有选择地缓存组件。include属性允许我们指定一个白名单,只有列表中的组件会被缓存。而exclude属性则...

    Android app缓存清理实现

    本文将深入探讨如何实现Android app的缓存清理,并基于提供的"CacheClear"压缩包文件,讲解如何封装一个获取和清理缓存的工具类。 首先,了解Android缓存的作用。缓存是为了提高数据读取速度,将常用但加载较慢的...

    Hibernate的缓存策略

    简单来说,缓存是一种存储技术,位于应用程序与物理数据之间,目的是为了减少应用程序对物理数据的访问频率,从而提升整体系统的性能。 #### 二、缓存的重要性 缓存之所以能够提高系统性能,是因为对物理数据(如...

    ie缓存清理软件

    需要注意的是,虽然清理缓存可以带来诸多好处,但有时过于频繁的清理可能会影响浏览体验,因为浏览器将无法利用缓存加速加载已访问过的网站。因此,建议用户根据自身需求设定合适的清理频率,以达到最佳的平衡。 总...

    缓存组件的实现.zip

    - **LFU (Least Frequently Used)**:最不经常使用,淘汰访问频率最低的项。 - **FIFO (First In First Out)**:先进先出,按照数据进入缓存的顺序淘汰。 4. **缓存一致性**:在分布式环境中,如何保证缓存与...

    chrome缓存清理神器

    清理缓存可以释放硬盘空间,减少因缓存过多导致的浏览器卡顿现象,同时也能保护用户的隐私,因为缓存中可能包含访问过的网页记录。 这款扩展的版本号为1.0.2,表明它可能已经过多次更新和优化,以提高稳定性和用户...

    webapi接口缓存组件.rar

    缓存是提升应用程序性能的关键技术,它减少了对数据库或其他耗时资源的重复访问,降低了服务器负载。 在描述中提到的“接口添加缓存”,意味着这个组件旨在为Web API的各个接口提供缓存机制。缓存通常涉及将频繁...

    清理应哟缓存的方式(包括清理系统应用的缓存)

    2. **使用第三方清理工具**:市面上有很多清理应用,如Clean Master,可以帮助用户一键清理系统和应用缓存。 3. **手动清理**:进入“设置”->“应用管理”或“应用信息”,逐个查看应用,点击“存储”选项,选择...

    uniapp-通用组件-可缓存图片组件

    uniapp移动端通用组件,显示图片,图片可缓存,除第一次需下载,之后就使用本地资源。

    C# 清理浏览器缓存

    调用该程序呢可以运行项目时自动清理IE缓存

    清理缓存的方法

    另外,现代浏览器如Chrome、Firefox、Edge等也有类似的清理缓存功能,一般在设置或隐私设置中可找到。 定期清理缓存不仅可以释放硬盘空间,还能提升浏览器的响应速度,保护个人隐私,防止某些问题(如网页加载错误...

    仿redis缓存Java版轻量级缓存组件LocalCache

    仿redis缓存Java版轻量级缓存组件LocalCache,基于JVM内存实现数据缓存及过期机制

    区域his系统清理缓存.rar

    4. **性能监控**:在清理前后,对系统性能进行监控,如CPU使用率、内存占用、响应时间等,以便评估清理效果和调整清理策略。 5. **日志分析**:分析系统日志,查找可能导致缓存积压的原因,如异常的高并发访问、...

Global site tag (gtag.js) - Google Analytics