一种带权重判断的缓存淘汰方法、装置和计算机设备制造方法及图纸

技术编号:28372445 阅读:22 留言:0更新日期:2021-05-07 23:59
本申请涉及一种带权重判断的缓存淘汰方法、装置和计算机设备,所述方法包括获取待插入缓存结构数据;基于待插入缓存结构数据判断是否命中预存的已缓存数据;若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;若判断为是,则将已缓存数据插入所述基础缓存数据链表结构中的缓存高级区,并生成低权重淘汰指令;基于所述低权重淘汰指令将缓存低级区的最末端已缓存数据移除。本发明专利技术一方面通过权重对要缓存的数据加以缓存,通过权重设置实现对权重高的数据缓存较长时间,另一方面也兼顾了LRU算法,对已缓存的数据再次被访问时,将其缓存更长时间,实现缓存的精细化控制,实现高效缓存。

【技术实现步骤摘要】
一种带权重判断的缓存淘汰方法、装置和计算机设备
本申请涉及计算机
,特别是涉及一种带权重判断的缓存淘汰方法、装置和计算机设备。
技术介绍
普通缓存淘汰方法多种多样,如申请号为CN201610720506.9的专利技术专利中公开了一种一种缓存淘汰策略的实时调整方法及装置,按照不同的缓存淘汰策略对业务进行采样,实时统计各缓存淘汰策略缓存数据的缓存命中率;根据缓存命中率计算将当前缓存淘汰策略切换为其他缓存淘汰策略的切换开销因子;当切换开销因子小于预设阈值时,对当前缓存淘汰策略进行切换。虽然,上述专利文件中公开的技术方案能够实时调整方法及装置,通过缓存数据的实时命中率反馈,对缓存算法中的特性参数进行动态调整,能够有效提高缓存算法的适应能力,增加缓存的命中率,从而提高整个系统的性能。但其仍存在明显弊端,如不能够对缓存数据实现较长时间且高效的缓存管理。因此,目前市面上的缓存淘汰方法存在缓存时间短以及不能实现高效缓存管理的技术问题。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够对数据加以缓存并实现较长时间且高效缓存管理的带权重判断的缓存淘汰方法、装置和计算机设备。本专利技术技术方案如下:一种带权重判断的缓存淘汰方法,所述方法包括:步骤S100:获取待插入缓存结构数据;步骤S200:基于获取的待插入缓存结构数据判断是否命中预存的基础缓存数据链表结构中的已缓存数据;其中,基础缓存数据链表结构包括缓存高级区和缓存低级区,所述缓存高级区和所述缓存低级区均依序缓存有已缓存数据,每个所述已缓存数据均包括已缓存数据标识和已缓存数据权重;步骤S300:若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;步骤S400:若判断为是,则将所述待插入缓存结构数据命中的已缓存数据插入所述基础缓存数据链表结构中的缓存高级区,并生成低权重淘汰指令;步骤S500:基于所述低权重淘汰指令将基础缓存数据链表结构中缓存低级区的最末端已缓存数据从所述基础缓存数据链表结构中移除。具体地,步骤S300:若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;之后还包括:步骤S310:若判断为否,则生成缓存低级区安置指令;步骤S320:根据所述缓存低级区安置指令将所述待插入缓存结构数据命中的已缓存数据安置于基础缓存数据链表结构中的缓存低级区。具体地,步骤S200:基于获取的待插入缓存结构数据判断是否命中预存的基础缓存数据链表结构中的已缓存数据;之后,还包括:步骤S210:若判断为否,则自定义所述待插入缓存结构数据的当前数据权重;步骤S220:将已定义了所述当前数据权重的所述待插入缓存结构数据插入基础缓存数据链表结构中的缓存低级区。具体地,基础缓存数据链表结构中的缓存低级区包括第一预设特定数量的低级区缓存位,各低级区缓存位依序排列;步骤S320:根据所述缓存低级区安置指令将所述待插入缓存结构数据命中的已缓存数据安置于基础缓存数据链表结构中的缓存低级区;之后还包括:步骤S321:根据所述缓存低级区安置指令将所述待插入缓存结构数据命中的已缓存数据安置于所述缓存低级区中处于第一位置的低级区缓存位;步骤S322:判断将所述待插入缓存结构数据命中的已缓存数据安置于所述缓存低级区中处于第一位置的低级区缓存位后,所述缓存低级区中的已缓存数据所占据的缓存位数量是否超出所述第一预设特定数量;步骤S323:若判断为是,则将缓存低级区中最后一位低级区缓存位中的已缓存数据从所述缓存低级区中移除。具体地,基础缓存数据链表结构中的缓存高级区包括第二预设特定数量的高级区缓存位,各高级区缓存位依序排列;步骤S400:若判断为是,则将所述待插入缓存结构数据命中的已缓存数据插入所述基础缓存数据链表结构中的缓存高级区,具体包括:若判断为是,则将所述待插入缓存结构数据命中的已缓存数据插入所述缓存高级区中处于第一位置的高级区缓存位。一种带权重判断的缓存淘汰装置,所述装置包括:缓存结构数据获取模块,用于获取待插入缓存结构数据;第一判断模块,用于基于获取的待插入缓存结构数据判断是否命中预存的基础缓存数据链表结构中的已缓存数据;其中,基础缓存数据链表结构包括缓存高级区和缓存低级区,所述缓存高级区和所述缓存低级区均依序缓存有已缓存数据,每个所述已缓存数据均包括已缓存数据标识和已缓存数据权重;第二判断模块,用于若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;数据插入模块,用于若判断为是,则将所述待插入缓存结构数据命中的已缓存数据插入所述基础缓存数据链表结构中的缓存高级区,并生成低权重淘汰指令;多余数据移除模块,用于基于所述低权重淘汰指令将基础缓存数据链表结构中缓存低级区的最末端已缓存数据从所述基础缓存数据链表结构中移除。具体地,所述第二判断模块还包括:低级区安置指令生成模块,用于若判断为否,则生成缓存低级区安置指令;缓存低级区数据安置模块,用于根据所述缓存低级区安置指令将所述待插入缓存结构数据命中的已缓存数据安置于基础缓存数据链表结构中的缓存低级区。具体地,所述第一判断模块还包括:当前数据权重自定义模块,用于若判断为否,则自定义所述待插入缓存结构数据的当前数据权重;新数据插入模块,用于将已定义了所述当前数据权重的所述待插入缓存结构数据插入基础缓存数据链表结构中的缓存低级区。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述带权重判断的缓存淘汰方法所述的步骤。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述带权重判断的缓存淘汰方法所述的步骤。本专利技术实现技术效果如下:上述带权重判断的缓存淘汰方法、装置和计算机设备,先获取待插入缓存结构数据;再基于获取的待插入缓存结构数据判断是否命中预存的基础缓存数据链表结构中的已缓存数据;其中,基础缓存数据链表结构包括缓存高级区和缓存低级区,所述缓存高级区和所述缓存低级区均依序缓存有已缓存数据,每个所述已缓存数据均包括已缓存数据标识和已缓存数据权重;然后若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;接着,若判断为是,则将所述待插入缓存结构数据命中的已缓存数据插入所述基础缓存数据链表结构中的缓存高级区,并生成低权重淘汰指令;最后,基于所述低权重淘汰指令将基础缓存数据链表结构中缓存低级区的最末端已缓存数据从所述基础缓存数据链表结构中移除,一方面通过权重对要缓存的数据加以缓存,通过权重设置实现对权重高的数据缓存较长时间,另一方面也兼顾了LRU算法,对已缓存的数据再次被访问时,将其缓存更长时间,实现缓存的精本文档来自技高网...

【技术保护点】
1.一种带权重判断的缓存淘汰方法,其特征在于,所述方法包括:/n步骤S100:获取待插入缓存结构数据;/n步骤S200:基于获取的待插入缓存结构数据判断是否命中预存的基础缓存数据链表结构中的已缓存数据;其中,基础缓存数据链表结构包括缓存高级区和缓存低级区,所述缓存高级区和所述缓存低级区均依序缓存有已缓存数据,每个所述已缓存数据均包括已缓存数据标识和已缓存数据权重;/n步骤S300:若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;/n步骤S400:若判断为是,则将所述待插入缓存结构数据命中的已缓存数据插入所述基础缓存数据链表结构中的缓存高级区,并生成低权重淘汰指令;/n步骤S500:基于所述低权重淘汰指令将基础缓存数据链表结构中缓存低级区的最末端已缓存数据从所述基础缓存数据链表结构中移除。/n

【技术特征摘要】
1.一种带权重判断的缓存淘汰方法,其特征在于,所述方法包括:
步骤S100:获取待插入缓存结构数据;
步骤S200:基于获取的待插入缓存结构数据判断是否命中预存的基础缓存数据链表结构中的已缓存数据;其中,基础缓存数据链表结构包括缓存高级区和缓存低级区,所述缓存高级区和所述缓存低级区均依序缓存有已缓存数据,每个所述已缓存数据均包括已缓存数据标识和已缓存数据权重;
步骤S300:若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;
步骤S400:若判断为是,则将所述待插入缓存结构数据命中的已缓存数据插入所述基础缓存数据链表结构中的缓存高级区,并生成低权重淘汰指令;
步骤S500:基于所述低权重淘汰指令将基础缓存数据链表结构中缓存低级区的最末端已缓存数据从所述基础缓存数据链表结构中移除。


2.根据权利要求1所述的带权重判断的缓存淘汰方法,其特征在于,步骤S300:若判断为是,则判断所述待插入缓存结构数据命中的已缓存数据包括的已缓存数据权重是否大于预设的第一标准权重;之后还包括:
步骤S310:若判断为否,则生成缓存低级区安置指令;
步骤S320:根据所述缓存低级区安置指令将所述待插入缓存结构数据命中的已缓存数据安置于基础缓存数据链表结构中的缓存低级区。


3.根据权利要求1所述的带权重判断的缓存淘汰方法,其特征在于,步骤S200:基于获取的待插入缓存结构数据判断是否命中预存的基础缓存数据链表结构中的已缓存数据;之后,还包括:
步骤S210:若判断为否,则自定义所述待插入缓存结构数据的当前数据权重;
步骤S220:将已定义了所述当前数据权重的所述待插入缓存结构数据插入基础缓存数据链表结构中的缓存低级区。


4.根据权利要求3所述的带权重判断的缓存淘汰方法,其特征在于,基础缓存数据链表结构中的缓存低级区包括第一预设特定数量的低级区缓存位,各低级区缓存位依序排列;
步骤S320:根据所述缓存低级区安置指令将所述待插入缓存结构数据命中的已缓存数据安置于基础缓存数据链表结构中的缓存低级区;之后还包括:
步骤S321:根据所述缓存低级区安置指令将所述待插入缓存结构数据命中的已缓存数据安置于所述缓存低级区中处于第一位置的低级区缓存位;
步骤S322:判断将所述待插入缓存结构数据命中的已缓存数据安置于所述缓存低级区中处于第一位置的低级区缓存位后,所述缓存低级区中的已缓存数据所占据的缓存位数量是否超出所述第一预设特定数量;
步骤S323:若判断为是,则将缓存低级区中最后一位低...

【专利技术属性】
技术研发人员:郭浩
申请(专利权)人:上海七牛信息技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1