【技术实现步骤摘要】
数据缓存方法、装置、计算机设备和存储介质
本专利技术涉及到数据处理的
,特别是涉及到一种数据缓存方法、装置、计算机设备和存储介质。
技术介绍
缓存通常为各设备系统的备份内存,由于内存资源有限,通常会设定一个固定内存值,当缓存大小超过固定值后,再按照LRU(LeastRencentlyUsed)、LFU(LeastFrequentlyUsed)或者FIFO(FirstInFirstOut)等算法对缓存进行清理。如规则引擎中,会缓存规则引擎实例,用于对设备请求的数据进行处理,而不需要每次请求都重新创建对象,当缓存达到设定的固定值时,会根据缓存算法进行清理。但是,在物联网场景中,设备上报数据或请求数据的频率往往是固定的,而这种场景中若依据上述LRU、LFU或者FIFO等算法进行清理缓存并不适合,缓存命中率并不高,且缓存资源利用也不够充分,鉴于上述各种缓存算法在物联网场景中的不足之处,亟需一种针对调用缓存频率基本固定的场景的缓存方法。
技术实现思路
本专利技术的主要目的为提供一种数据缓存方法、装置、计算机设备和存储介质,旨在解决在请求频率基本固定的场景中,缓存资源利用不充分的技术问题。基于上述专利技术目的,本专利技术提出一种数据缓存方法,用于缓存请求频率固定的数据,包括:接收设备发来的当前请求;判断所述当前请求的请求对象是否为缓存中的对象;若所述请求对象为缓存中的对象,则从所述缓存中调用所述请求对象;否则从预设数据库中获取所述请求对象,并判断是否需要将所述请求对象存入所述缓存;若判定需要将所述请求对象存入所述缓存中,则获取所述缓存中各对象的调用频率以及调用时刻, ...
【技术保护点】
1.一种数据缓存方法,用于缓存请求频率固定的数据,其特征在于,包括:接收设备发来的当前请求;判断所述当前请求的请求对象是否为缓存中的对象;若所述请求对象为缓存中的对象,则从所述缓存中调用所述请求对象,否则从预设数据库中获取所述请求对象,并判断是否需要将所述请求对象存入所述缓存;若判定需要将所述请求对象存入所述缓存中,则获取所述缓存中各对象的调用频率以及调用时刻,所述调用时刻为基于当前时刻所述对象前一次被调用的时刻;依据所述调用频率以及所述调用时刻计算出各所述对象在第一预设时间内每次被调用的时刻,所述第一预设时间为从当前时刻起指定时间内的时间段;将各所述对象对应的被调用的时刻进行对比得到时刻最晚的目标时刻,将对应所述目标时刻的对象记为所述目标对象;删除所述目标对象,并将所述请求对象存入所述缓存中。
【技术特征摘要】
1.一种数据缓存方法,用于缓存请求频率固定的数据,其特征在于,包括:接收设备发来的当前请求;判断所述当前请求的请求对象是否为缓存中的对象;若所述请求对象为缓存中的对象,则从所述缓存中调用所述请求对象,否则从预设数据库中获取所述请求对象,并判断是否需要将所述请求对象存入所述缓存;若判定需要将所述请求对象存入所述缓存中,则获取所述缓存中各对象的调用频率以及调用时刻,所述调用时刻为基于当前时刻所述对象前一次被调用的时刻;依据所述调用频率以及所述调用时刻计算出各所述对象在第一预设时间内每次被调用的时刻,所述第一预设时间为从当前时刻起指定时间内的时间段;将各所述对象对应的被调用的时刻进行对比得到时刻最晚的目标时刻,将对应所述目标时刻的对象记为所述目标对象;删除所述目标对象,并将所述请求对象存入所述缓存中。2.根据权利要求1所述的数据缓存方法,其特征在于,所述依据所述调用频率以及所述调用时刻计算出各所述对象在所述第一预设时间内每次被调用的时刻的步骤,包括:利用以下公式计算各所述对象在所述第一预设时间内每次被调用的时刻:其中,i为所述缓存中的任一个对象,Ti为对象i的调用时刻,fi为对象i的调用频率,ti为前一次调用对象i的时刻。3.根据权利要求1所述的数据缓存方法,其特征在于,所述判断是否需要将所述请求对象存入所述缓存的步骤,包括:依据预设的所有请求的请求频率计算得到在第二预设时间内各请求按请求时间排序的排列顺序;计算在所述请求对象没有存入所述缓存的情况下按所述排列顺序遍历各请求所需的时间,并记为第一耗时;计算在所述请求对象存入所述缓存的情况下按所述排序顺序遍历各请求所需的时间,并记为第二耗时;将所述第一耗时与所述第二耗时进行对比;若所述第一耗时比所述第二耗时长,则判定需要将所述请求对象存入所述缓存;若所述第一耗时比所述第二耗时短,则判定不需要将所述请求对象存入所述缓存。4.根据权利要求3所述的数据缓存方法,其特征在于,所述依据预设的所有请求的请求频率计算得到在第二预设时间内各请求按请求时间排序的排列顺序的步骤,包括:依据预设的所有请求的请求频率计算得到在所述第二预设时间内各所述请求的所有请求时刻;将对应每个所述请求时刻的请求按时间顺序进行排序得到所述排列顺序;其中,通过以下公式计算得到请求j的所有请求时刻:其中,j为所述预设的所有请求中的任一个请求,Hj(n)为请求j的第n次请求的请求时刻,fj为请求j的请求频率,t0为所述第二预设时间内的初始时刻。5.根据权利要求1所述的数据缓存方法,其特征在于,所述判断是否需要将所述请求对象存入所述缓存的步骤,包括:获取所述缓存中各对象的调用频率;依据所述调用频率计算出下一个请求的对象,并记为...
【专利技术属性】
技术研发人员:李桃,
申请(专利权)人:平安科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。