一种用于云计算及边缘计算的缓存置换方法及装置制造方法及图纸

技术编号:22387264 阅读:16 留言:0更新日期:2019-10-29 06:29
本发明专利技术实施例提供了一种用于云计算及边缘计算的缓存置换方法及装置,其中方法包括:获取待缓存项;计算待缓存项及各缓存项的缓存价值;计算第一状态的第一惩罚值;当当前剩余存储空间的大小不小于待缓存项的数据大小时缓存待缓存项;否则,判断各缓存项与待缓存项的缓存价值的大小;判断当前剩余存储空间与当前缓存项所占用的存储空间的大小之和,是否大于待缓存项的数据大小;如果是,将当前缓存项置换为待缓存项;如果否,生成当前缓存项集合;判断第二惩罚值是否小于第一惩罚值;如果是,将当前缓存项集合中的各缓存项置换为待缓存项。本发明专利技术实施例能够更加合理地对服务器中的缓存进行置换,从而提高服务器的缓存性能。

【技术实现步骤摘要】
一种用于云计算及边缘计算的缓存置换方法及装置
本专利技术涉及云计算
,特别是涉及一种用于云计算及边缘计算的缓存置换方法及装置。
技术介绍
随着网络技术的不断发展,云计算开始逐步深入到我们的生活中,越来越多的互联网企业逐步向云计算转型,传统行业对于云计算的接纳度也得到普遍提升,云服务的市场需求不断增加。云计算在互联网、金融、工业、交通、物流、医疗健康等领域发挥着越来越重要的作用,云计算技术在未来互联网技术发展中扮演着重要的角色,云计算相关技术的研究对于促进云计算的发展具有重要的意义。云计算技术需要使用缓存技术,即,通过将数据暂存在相对高速的存储器中,可以提高后续的重复访问速度。由于缓存的容量通常远远小于I/O路径中下一级存储器的容量,当缓存满了以后,需要在一个恰当的时机选择恰当的数据进行淘汰,回收缓存空间以存储新的数据。这种选择的依据就是缓存置换算法。现有的缓存置换算法中,可以采用FIFO(FirstinFirstout,先进先出)缓存置换方法,其原理是在需要进行缓存置换时,替换最早进入缓存空间的缓存项,即,如果一个缓存项最先进入缓存中,则应该最早被淘汰掉。然而用于云计算的服务器中,有的缓存项被访问频率高,有的缓存项被访问频率低,当采用FIFO缓存置换方法时,由于其置换策略是依照先进先出原则对缓存进行置换,因此对于已经缓存至服务器中的缓存项,访问频率高的缓存项可能会因为缓存时间早而被提前置换,访问频率低的缓存项可能会因为缓存时间晚而被推后置换,使得服务器的缓存性能有待提高。
技术实现思路
本专利技术实施例的目的在于提供一种用于云计算及边缘计算的缓存置换方法及装置,以实现进一步提高服务器的缓存性能。具体技术方案如下:第一方面,本专利技术实施例提供了一种用于云计算及边缘计算的缓存置换方法,所述方法包括:获取待缓存项,并确定所述待缓存项的大小及进程优先级;利用第一预设公式,计算所述待缓存项的缓存价值,以及计算服务器中已缓存的各缓存项的缓存价值,所述缓存价值用于表示数据的重要程度;所述服务器为云计算服务器或边缘节点服务器;利用第二预设公式,计算第一状态的第一惩罚值,所述第一状态为未对各缓存项进行置换所对应的状态;所述惩罚值用于表示所述缓存价值与缓存项的数量之间的关联关系;当所述服务器的当前剩余存储空间的大小不小于所述待缓存项的数据大小时,缓存所述待缓存项;当所述服务器的当前剩余存储空间的大小小于所述待缓存项的数据大小时,按照各缓存项缓存价值由小到大的顺序,依次判断各缓存项的缓存价值与所述待缓存项的缓存价值的大小;在当前缓存项的缓存价值小于所述待缓存项的缓存价值的情况下,判断当前剩余存储空间与所述当前缓存项所占用的存储空间的大小之和,是否大于所述待缓存项的数据大小;如果是,则将所述当前缓存项置换为所述待缓存项;如果否,则生成当前缓存项集合;利用所述第二预设公式计算第二状态对应的第二惩罚值,并判断第二惩罚值是否小于所述第一惩罚值,所述第二状态为将所述当前缓存项集合中的各缓存项置换为所述待缓存项后对应的状态,所述当前缓存项集合中至少包括两个缓存项;如果所述第二惩罚值小于所述第一惩罚值,则将所述当前缓存项集合中的各缓存项置换为所述待缓存项。可选的,所述第一预设公式表示为:式中,ki表示第i个缓存项;v(ki)表示缓存价值;t表示当前缓存项未被使用的时间;P(ki)表示累积加权进程优先级;P(ki)=p(ki)+λP′(ki),其中,p(ki)表示当前次待缓存项对应进程优先级,P′(ki)表示当前缓存项的历史使用累积优先级,λ为衰减因子,λ∈(0,1),当所述当前缓存项为所述待缓存项时,P′(ki)=0,t=1。可选的,所述第二预设公式表示为:式中,g(K*)表示惩罚值,μ表示预设系数;n表示已缓存数据项个数;fa(i)表示最大平均缓存价值,fb(i)表示最大缓存项数量,其中,S表示服务器整体缓存空间大小。其中,i表示第i个,i为大于1的整数。可选的,所述生成当前缓存项集合之前,所述方法还包括:判断是否具有符合预设条件的待生成缓存项集合,所述预设条件为:待生成的缓存项集合中的缓存项所占用存储空间大小与服务器的剩余存储空间大小之和,大于所述待缓存项的大小;所述生成当前缓存项集合的步骤,包括:将符合预设条件的待生成缓存项集合,确定为当前缓存项集合。可选的,所述方法还包括:如果所述第二惩罚值不小于所述第一惩罚值,则在所述当前缓存项集合中添加一个新的缓存项,作为新的当前缓存项集合,执行所述利用所述第二预设公式计算第二状态对应的第二惩罚值,并判断第二惩罚值是否小于所述第一惩罚值的步骤。第二方面,本专利技术实施例提供了一种用于云计算及边缘计算的缓存置换装置,所述装置包括:获取模块,用于获取待缓存项,并确定所述待缓存项的大小及进程优先级;第一计算模块,用于利用第一预设公式,计算所述待缓存项的缓存价值,以及计算服务器中已缓存的各缓存项的缓存价值,所述缓存价值用于表示数据的重要程度;所述服务器为云计算服务器或边缘节点服务器;第二计算模块,用于利用第二预设公式,计算第一状态的第一惩罚值,所述第一状态为未对各缓存项进行置换所对应的状态;所述惩罚值用于表示所述缓存价值与缓存项的数量之间的关联关系;缓存模块,用于当所述服务器的当前剩余存储空间的大小不小于所述待缓存项的数据大小时,缓存所述待缓存项;第一判断模块,用于当所述服务器的当前剩余存储空间的大小小于所述待缓存项的数据大小时,按照各缓存项缓存价值由小到大的顺序,依次判断各缓存项的缓存价值与所述待缓存项的缓存价值的大小;第二判断模块,用于在当前缓存项的缓存价值小于所述待缓存项的缓存价值的情况下,判断当前剩余存储空间与所述当前缓存项所占用的存储空间的大小之和,是否大于所述待缓存项的数据大小;第一置换模块,用于如果当前剩余存储空间与所述当前缓存项所占用的存储空间的大小之和大于所述待缓存项的数据大小,则将所述当前缓存项置换为所述待缓存项;生成模块,用于如果当前剩余存储空间与所述当前缓存项所占用的存储空间的大小之和不大于所述待缓存项的数据大小,则生成当前缓存项集合;第三判断模块,用于利用所述第二预设公式计算第二状态对应的第二惩罚值,并判断第二惩罚值是否小于所述第一惩罚值,所述第二状态为将所述当前缓存项集合中的各缓存项置换为所述待缓存项后对应的状态,所述当前缓存项集合中至少包括两个缓存项;第二置换模块,用于如果所述第二惩罚值小于所述第一惩罚值,则将所述当前缓存项集合中的各缓存项置换为所述待缓存项。可选的,所述第一预设公式表示为:式中,ki表示第i个缓存项;v(ki)表示缓存价值;t表示当前缓存项未被使用的时间;P(ki)表示累积加权进程优先级;P(ki)=p(ki)+λP′(ki),其中,p(ki)表示当前次待缓存项对应进程优先级,P′(ki)表示当前缓存项的历史使用累积优先级,λ为衰减因子,λ∈(0,1),当所述当前缓存项为所述待缓存项时,P′(ki)=0,t=1。可选的,所述第二预设公式表示为:式中,g(K*)表示惩罚值,μ表示预设系数;n表示已缓存数据项个数;fa(i)表示最大平均缓存价值,fb(i)表示最大缓存项数量,其中,S表示服务器整体缓存空间大小。其中,i表示第i个,i为大于1的整数。可选的本文档来自技高网...

【技术保护点】
1.一种用于云计算及边缘计算的缓存置换方法,其特征在于,所述方法包括:获取待缓存项,并确定所述待缓存项的大小及进程优先级;利用第一预设公式,计算所述待缓存项的缓存价值,以及计算服务器中已缓存的各缓存项的缓存价值,所述缓存价值用于表示数据的重要程度;所述服务器为云计算服务器或边缘节点服务器;利用第二预设公式,计算第一状态的第一惩罚值,所述第一状态为未对各缓存项进行置换所对应的状态;所述惩罚值用于表示所述缓存价值与缓存项的数量之间的关联关系;当所述服务器的当前剩余存储空间的大小不小于所述待缓存项的数据大小时,缓存所述待缓存项;当所述服务器的当前剩余存储空间的大小小于所述待缓存项的数据大小时,按照各缓存项缓存价值由小到大的顺序,依次判断各缓存项的缓存价值与所述待缓存项的缓存价值的大小;在当前缓存项的缓存价值小于所述待缓存项的缓存价值的情况下,判断当前剩余存储空间与所述当前缓存项所占用的存储空间的大小之和,是否大于所述待缓存项的数据大小;如果是,则将所述当前缓存项置换为所述待缓存项;如果否,则生成当前缓存项集合;利用所述第二预设公式计算第二状态对应的第二惩罚值,并判断第二惩罚值是否小于所述第一惩罚值,所述第二状态为将所述当前缓存项集合中的各缓存项置换为所述待缓存项后对应的状态,所述当前缓存项集合中至少包括两个缓存项;如果所述第二惩罚值小于所述第一惩罚值,则将所述当前缓存项集合中的各缓存项置换为所述待缓存项。...

【技术特征摘要】
1.一种用于云计算及边缘计算的缓存置换方法,其特征在于,所述方法包括:获取待缓存项,并确定所述待缓存项的大小及进程优先级;利用第一预设公式,计算所述待缓存项的缓存价值,以及计算服务器中已缓存的各缓存项的缓存价值,所述缓存价值用于表示数据的重要程度;所述服务器为云计算服务器或边缘节点服务器;利用第二预设公式,计算第一状态的第一惩罚值,所述第一状态为未对各缓存项进行置换所对应的状态;所述惩罚值用于表示所述缓存价值与缓存项的数量之间的关联关系;当所述服务器的当前剩余存储空间的大小不小于所述待缓存项的数据大小时,缓存所述待缓存项;当所述服务器的当前剩余存储空间的大小小于所述待缓存项的数据大小时,按照各缓存项缓存价值由小到大的顺序,依次判断各缓存项的缓存价值与所述待缓存项的缓存价值的大小;在当前缓存项的缓存价值小于所述待缓存项的缓存价值的情况下,判断当前剩余存储空间与所述当前缓存项所占用的存储空间的大小之和,是否大于所述待缓存项的数据大小;如果是,则将所述当前缓存项置换为所述待缓存项;如果否,则生成当前缓存项集合;利用所述第二预设公式计算第二状态对应的第二惩罚值,并判断第二惩罚值是否小于所述第一惩罚值,所述第二状态为将所述当前缓存项集合中的各缓存项置换为所述待缓存项后对应的状态,所述当前缓存项集合中至少包括两个缓存项;如果所述第二惩罚值小于所述第一惩罚值,则将所述当前缓存项集合中的各缓存项置换为所述待缓存项。2.根据权利要求1所述的方法,其特征在于,所述第一预设公式表示为:式中,ki表示第i个缓存项;v(ki)表示缓存价值;t表示当前缓存项未被使用的时间;P(ki)表示累积加权进程优先级;P(ki)=p(ki)+λP′(ki),其中,p(ki)表示当前次待缓存项对应进程优先级,P′(ki)表示当前缓存项的历史使用累积优先级,λ为衰减因子,λ∈(0,1),当所述当前缓存项为所述待缓存项时,P′(ki)=0,t=1。3.根据权利要求1所述的方法,其特征在于,所述第二预设公式表示为:式中,g(K*)表示惩罚值,μ表示预设系数;n表示已缓存数据项个数;fa(i)表示最大平均缓存价值,fb(i)表示最大缓存项数量,其中,S表示服务器整体缓存空间大小。4.根据权利要求1所述的方法,其特征在于,所述生成当前缓存项集合之前,所述方法还包括:判断是否具有符合预设条件的待生成缓存项集合,所述预设条件为:待生成的缓存项集合中的缓存项所占用存储空间大小与服务器的剩余存储空间大小之和,大于所述待缓存项的大小;所述生成当前缓存项集合的步骤,包括:将符合预设条件的待生成缓存项集合,确定为当前缓存项集合。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果所述第二惩罚值不小于所述第一惩罚值,则在所述当前缓存项集合中添加一个新的缓存项,作为新的当前缓存项集合,执行所述利用所述第二预设公式计算第二状态对应的第二惩罚值,并判断第二惩罚值是否小于所述第一惩罚值的步骤。6.一种用于云计算及边缘计算的缓存置换装置,其特征在于,所述装置包括...

【专利技术属性】
技术研发人员:罗红魏华孙岩
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京,11

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

1