数据缓存方法、系统、存储介质及设备与流程

    专利2022-07-08  88


    本发明涉及数据处理技术领域,特别涉及一种数据缓存方法、系统、存储介质及设备。



    背景技术:

    随着互联网的发展,大量网络应用产生了海量的数据,为了提高查询效率,同时为避免直接与数据库操作而出现系统瓶颈,通常将数据放入redis存储端。

    redis存储端上缓存的热点数据,可能存在70%以上的数据量在一段固定时间之内,仅被30%的访问请求,剩余百分之30%承受着70%的访问请求,甚至可能存在1%的数据在某段固定的时间承受着90%的访问请求,为了这某段固定时间点急剧产生的访问需求,会有存在以下几类潜在的风险;(1)在某段固定时间点急剧产生对某一小部分缓存数据的急剧访问需求,假设当前缓存数据失效,大批量的请求直接打到数据库上,导致整个系统奔溃,即使做了双端加锁,在数据库中获取新的缓存数据,也将会有一大批访问请求阻塞并请求超时;(2)假设缓存系统稳定的情况下,大批请求直接被缓存命中,假设对于单个服务而言,访问redis存储端的请求量超过了redis存储端的连接池资源,会对当前应用访问redis存储端其他请求造成访问失败或其他未知问题;(3)假设缓存系统稳定的情况下,大批请求直接被缓存命中,对于redis存储端集群服务而言,可能需要去衡量访问请求量,假设超过了当前集群能够承受的量,可能导致缓存集群服务的不稳定。



    技术实现要素:

    基于此,本发明的目的是提供一种数据缓存方法、系统、存储介质及设备,合理分配利用redis存储端的缓存空间,提升了数据查询的响应效率和查询系统稳定性。

    本发明提供一种数据缓存方法,所述方法包括:

    统计访问词在预设时间间隔的后台服务器访问量;

    当所述访问词的访问量达到第一预设阈值时,标记所述访问词为热点词,调取所述热点词对应的内容数据;

    将所述内容数据由redis存储端缓存至客户端;

    当所述热点词的预设的时间内后台服务器访问量低于第一预设值时,标记所述热点词为温点词;

    当所述温点词的预设的时间内后台服务器访问量低于第二预设值时,清除所述客户端对应的所述内容数据。

    本发明提供的数据缓存方法,可在预设时间间隔循环统计访问词并确定访问词中的热点词,将热点词对应的内容数据(即热点数据)从redis存储端缓存至客户端,使得redis存储端的存储空间始终相对稳定,避免了大批量访问请求导致redis存储端瘫痪的情况,克服了当在大批访问请求直接被缓存命中,访问redis存储端的请求量超过了redis存储端的连接池资源,会对当前应用访问redis存储端其他请求造成访问失败的问题。

    同时,当热点词的访问量下降到设定值(即第二预设值)时,将清除客户端对应的所述内容数据,也确保了客户端缓存的及时清理,使得客户端的缓存空间可以合理分配利用,保证了其正常的运行。

    进一步的,所述统计访问词在预设时间间隔的后台服务器访问量的步骤包括:

    获取所有客户端的访问请求记录,所述访问请求记录包括访问时间、访问地址、访问词;

    根据原子递增方法统计预设时间间隔每个访问词的访问量。

    进一步的,所述将所述内容数据由redis存储端缓存至客户端的步骤之后还包括:

    每间隔一预设时间查询所述热点词在所述预设时间内是否形成新的内容数据;

    若是,则判断所述热点词在周期内后台服务器访问数量是否达到第二预设值;

    若是,则将所述新的内容数据由所述redis存储端缓存至所述客户端。

    进一步的,所述将所述内容数据由redis存储端缓存至客户端的步骤之后包括:

    判断所述客户端提出的访问请求中的访问词是否为所述热点词或所述温点词;

    若是,则在客户端调取所述热点词或所述温点词对应的内容数据。

    本发明提供一种数据缓存系统,该数据缓存系统包括:

    统计模块:用于统计访问词在预设时间间隔的后台服务器访问量;

    调取模块:用于当所述访问词的访问量达到第一预设阈值时,标记所述访问词为热点词,调取所述热点词对应的内容数据;

    存储模块:用于将所述内容数据由redis存储端缓存至客户端;

    标记模块:用于当所述热点词的预设的时间内后台服务器访问量低于第一预设值时,标记所述热点词为温点词;

    清理模块:用于当所述温点词的预设的时间内后台服务器访问量低于第二预设值时,清除所述客户端对应的所述内容数据。

    进一步的,所述系统还包括:

    读取单元:用于获取所有客户端的访问请求记录,所述访问请求记录包括访问时间、访问地址、访问词;

    计数单元:用于根据原子递增方法统计预设时间间隔每个访问词的访问量。若否,则返回执行接受客户端发送的获取验证码指令步骤。

    进一步的,所述系统还包括:

    查询更新模块:用于每间隔一预设时间查询所述热点词在所述预设时间内是否形成新的内容数据;若是,则判断所述热点词在周期内后台服务器访问数量是否达到第二预设值;若是,则将所述新的内容数据由所述redis存储端缓存至所述客户端。

    本发明还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的数据缓存方法。

    本发明还提出一种数据缓存设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的数据缓存方法。

    本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实施例了解到。

    附图说明

    此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

    图1为本发明第一实施例提出的数据缓存方法流程图;

    图2为本发明第一实施中统计访问词在预设时间间隔的后台服务器访问量的流程图;

    图3为本发明第一实施中对热点词对应的内容数据更新的流程图;

    图4为本发明第一实施中客户端获取热点词对应内容数据的流程图;

    图5为本发明第二实施例的数据缓存系统结构示意图;

    图6为本发明第三实施例当中的数据缓存设备。

    具体实施方式

    为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

    显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。

    在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。

    除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。

    本实施例还提供了一种数据缓存方法。该数据缓存方法应用于客户端、redis存储端、和后台服务器。其中,后台服务器用于存储和处理所有的数据以及信息。客户端用于发送访问请求和接收访问请求对应的内容数据。redis(remotedictionaryserver:远程数据服务)存储端是一个key-value存储系统(键值存储系统),作为后台服务器与客户端的中间层,可用于缓存,事件发布或订阅,高速队列等场景;使用c语言编写,支持网络,提供字符串,哈希,列表,队列,集合结构直接存取,基于内存,可持久化。

    图1是根据本申请第一实施例提出的数据缓存方法流程图,如图1所示,该流程包括如下步骤:

    步骤s10,统计访问词在预设时间间隔的后台服务器访问量。

    在本发明实施例中,在数据缓存操作步骤中,对访问词在一预设时间间隔的后台服务器访问量进行统计,该操作步骤为持续循环步骤,以达到全时段对访问词的访问量进行计数的目的,以便于确定每个时段的访问热点。

    步骤s20,当所述访问词的访问量达到第一预设阈值时,标记所述访问词为热点词,调取所述热点词对应的内容数据。

    在本发明实施例中,通过设置一个预设阈值,来标记当前时段的访问热点,预设阈值的确定由客户端的缓存空间、后台服务器的数据吞吐量来确定。例如,客户端的缓存空间较为充裕,后台服务器的数据吞吐量较大,设置常规访问词访问量前100的统计数,将排名前100的访问词标记为热点词。再例如,直接设置访问词访问量数值基数达到一万的访问词为热点词,第一预设阈值为一万。

    步骤s30,将所述内容数据由redis存储端缓存至客户端。

    其中,对应热点词对应的内容数据,可通过关键词关联的方法去确定每个热点词对应的内容数据,并且内容数据可以采用相似度排名的方式由相似度自高到底的方式排列。本发明实施例中,redis存储端对于热点词对应的内容数据的处理模式类似于中转站,使得热点词对应的内容数据加载至客户端,客户端提出热点词访问请求的时候,数据可在客户端的缓冲中直接提取,避免了热点词大批量命中redis存储端的情况,避免了redis存储端由于访问量剧增而产生数据交互效率降低以及redis存储端稳定性受影响的问题。

    步骤s40,当所述热点词的预设的时间内后台服务器访问量低于第一预设值时,标记所述热点词为温点词。

    步骤s50,当所述温点词的预设的时间内后台服务器访问量低于第二预设值时,清除所述客户端对应的所述内容数据。

    本发明实施例中,客户端实时跟进当前热点词的访问情况,对热点词的访问量情况实时跟进,当访问量低于第二预设值时,即代表该热点词(温点词)的热度高峰期已经过去了,客户端清除缓存内的对应内容数据,使得客户端的缓存空间得到释放,实现了客户端缓存空间的合理的分配利用。

    通过上述步骤,可在预设时间间隔循环统计访问词并确定访问词中的热点词,将热点词对应的内容数据(即热点数据)从redis存储端缓存至客户端,使得redis存储端的存储空间始终相对稳定,避免了大批量访问请求导致redis存储端瘫痪的情况,克服了当在大批访问请求直接被缓存命中,访问redis存储端的请求量超过了redis存储端的连接池资源,会对当前应用访问redis存储端其他请求造成访问失败的问题。

    同时,当热点词的访问量下降到设定值(即第二预设值)时,将清除客户端对应的所述内容数据,也确保了客户端缓存的及时清理,使得客户端的缓存空间可以合理分配利用,保证了其正常的运行。

    请参阅图2,为本发明第一实施例统计访问词在预设时间间隔的后台服务器访问量的流程图。其具体步骤包括:

    步骤s11,获取所有客户端的访问请求记录,所述访问请求记录包括访问时间、访问地址、访问词。

    本发明实施例中,后台服务器访问量的统计由后台服务器进行统计,后台服务器接收客户端的访问请求并生成访问请求记录,记录客户端的访问词、访问地址、访问词。

    步骤s12,根据原子递增方法统计预设时间间隔每个访问词的访问量。

    本发明实施例中,通过原子递增方法统计访问词,避免了同一客户端以多次发出访问请求的方式来刷热度,对热点词的计算更加科学智能,提升了统计访问量的精准度。

    请参阅图3,为本发明第一实施例对热点词对应的内容数据更新的流程图。其具体步骤包括:

    步骤s31,每间隔一预设时间查询所述热点词在所述预设时间内是否形成新的内容数据。

    步骤s32,若是,则判断所述热点词在周期内后台服务器访问数量是否达到第二预设值。

    步骤s33,若是,则将所述新的内容数据由所述redis存储端缓存至所述客户端。

    本发明实施例在确定热点词之后,持续对热点词进行追踪,查询对应热点词在之后是时间段是否产生新的内容数据,并将热点词对应的内容数据缓存至客户端,确保了热点词关联的内容数据的时效性。同时通过判断热点词的访问量在筛选是否需要将内容数据缓存至客户端,实现了对于客户端缓存空间的合理利用。

    请参阅图4,为本发明第一实施例客户端获取热点词对应内容数据的流程图。具体步骤如下:

    步骤s34,判断所述客户端提出的访问请求中的访问词是否为所述热点词或所述温点词。

    本发明实施例中对客户端访问请求记录中的访问词是否为所述热点词或所述温点词的判断采用查询客户端缓存空间内有无对应的所述热点词或所述温点词进行判定。

    步骤s35,若是,则在客户端调取所述热点词或所述温点词对应的内容数据。

    通过上述步骤,使得客户端在提出访问请求的操作后,先对客户端缓存进行检索,检索到访问词为客户端缓存空间内的热点词或温点词时,直接在客户端获取访问词对应的内容数据,相比于现有技术,省去了客户端的访问请求向redis存储端调取数据的过程,相对而言,使得redis存储端在高峰期的数据吞吐量得到优化,优化了redis存储端的稳定性。

    需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

    本实施例还提供了一种数据缓存系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

    图5是根据本申请第二实施例的数据缓存系统的结构框图,该数据缓存系统包括:

    统计模块51:用于统计访问词在预设时间间隔的后台服务器访问量;

    调取模块52:用于当所述访问词的访问量达到第一预设阈值时,标记所述访问词为热点词,调取所述热点词对应的内容数据;

    存储模块53:用于将所述内容数据由redis存储端缓存至客户端;

    标记模块54:用于当所述热点词的预设的时间内后台服务器访问量低于第一预设值时,标记所述热点词为温点词;

    清理模块55:用于当所述温点词的预设的时间内后台服务器访问量低于第二预设值时,清除所述客户端对应的所述内容数据。

    此外,该数据缓存系统还包括:

    读取单元511:用于获取所有客户端的访问请求记录,所述访问请求记录包括访问时间、访问地址、访问词;

    计数单元512:用于根据原子递增方法统计预设时间间隔每个访问词的访问量。

    查询更新模块56:用于每间隔一预设时间查询所述热点词在所述预设时间内是否形成新的内容数据;若是,则判断所述热点词在周期内后台服务器访问数量是否达到第二预设值;若是,则将所述新的内容数据由所述redis存储端缓存至所述客户端。

    调用模块57:用于判断所述客户端提出的访问请求中的访问词是否为所述热点词或所述温点词;若是,则在客户端调取所述热点词或所述温点词对应的内容数据。

    综上,本发明上述实施例当中的数据缓存系统,客户端实时跟进当前热点词的访问情况,对热点词的访问量情况实时跟进,当访问量低于第二预设值时,即代表该热点词(温点词)的热度高峰期已经过去了,客户端清除缓存内的对应内容数据,使得客户端的缓存空间得到释放,实现了客户端缓存空间的合理的分配利用。通过将热点词对应的内容数据(即热点数据)从redis存储端缓存至客户端,使得redis存储端的存储空间始终相对稳定,避免了大批量访问请求导致redis存储端瘫痪的情况,克服了当在大批访问请求直接被缓存命中,访问redis存储端的请求量超过了redis存储端的连接池资源,会对当前应用访问redis存储端其他请求造成访问失败的问题;通过判断当热点词的访问量下降到设定值(即第二预设值)时,将清除客户端对应的所述内容数据,确保了客户端缓存的及时清理,使得客户端的缓存空间可以合理分配利用,保证了其正常的运行;通过原子递增方法统计访问词,避免了同一客户端以多次发出访问请求的方式来刷热度,对热点词的计算更加科学智能,提升了统计访问量的精准度;通过判断热点词的访问量在筛选是否需要将内容数据缓存至客户端,实现了对于客户端缓存空间的合理利用;省去了客户端的访问请求向redis存储端调取数据的过程,相对而言,使得redis存储端在高峰期的数据吞吐量得到优化,优化了redis存储端的稳定性。

    需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。

    本发明另一方面还提出一种数据缓存设备,请参阅图6,所示为本发明实施例三当中的数据缓存设备,包括存储器20、处理器10以及存储在存储器上并可在处理器上运行的计算机程序30,所述处理器10执行所述程序30时实现如上述的数据缓存方法。

    其中,所述数据缓存设备具体可以为带有数据库的计算机设备,例如服务器等,处理器10在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他加密认证芯片,用于运行存储器20中存储的程序代码或处理数据,例如执行访问限制程序等。

    其中,存储器20至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器20在一些实施例中可以是数据缓存设备的内部存储单元,例如该数据缓存设备的硬盘。存储器20在另一些实施例中也可以是数据缓存设备的外部存储装置,例如数据缓存设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器20还可以既包括数据缓存设备的内部存储单元也包括外部存储装置。存储器20不仅可以用于存储安装于数据缓存设备的应用软件及各类数据,还可以用于暂时地存储已经输出或者将要输出的数据。

    需要指出的是,图6示出的结构并不构成对数据缓存设备的限定,在其它实施例当中,该数据缓存设备可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。

    综上,本发明上述实施例当中的数据缓存设备,客户端实时跟进当前热点词的访问情况,对热点词的访问量情况实时跟进,当访问量低于第二预设值时,即代表该热点词(温点词)的热度高峰期已经过去了,客户端清除缓存内的对应内容数据,使得客户端的缓存空间得到释放,实现了客户端缓存空间的合理的分配利用。通过将热点词对应的内容数据(即热点数据)从redis存储端缓存至客户端,使得redis存储端的存储空间始终相对稳定,避免了大批量访问请求导致redis存储端瘫痪的情况,克服了当在大批访问请求直接被缓存命中,访问redis存储端的请求量超过了redis存储端的连接池资源,会对当前应用访问redis存储端其他请求造成访问失败的问题;通过判断当热点词的访问量下降到设定值(即第二预设值)时,将清除客户端对应的所述内容数据,确保了客户端缓存的及时清理,使得客户端的缓存空间可以合理分配利用,保证了其正常的运行;通过原子递增方法统计访问词,避免了同一客户端以多次发出访问请求的方式来刷热度,对热点词的计算更加科学智能,提升了统计访问量的精准度;通过判断热点词的访问量在筛选是否需要将内容数据缓存至客户端,实现了对于客户端缓存空间的合理利用;省去了客户端的访问请求向redis存储端调取数据的过程,相对而言,使得redis存储端在高峰期的数据吞吐量得到优化,优化了redis存储端的稳定性。

    本发明实施例还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述的数据缓存方法。

    本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。

    计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

    应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

    以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

    以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。


    技术特征:

    1.一种数据缓存方法,其特征在于,所述方法包括:

    统计访问词在预设时间间隔的后台服务器访问量;

    当所述访问词的访问量达到第一预设阈值时,标记所述访问词为热点词,调取所述热点词对应的内容数据;

    将所述内容数据由redis存储端缓存至客户端;

    当所述热点词的预设的时间内后台服务器访问量低于第一预设值时,标记所述热点词为温点词;

    当所述温点词的预设的时间内后台服务器访问量低于第二预设值时,清除所述客户端对应的所述内容数据。

    2.根据权利要求1所述的数据缓存方法,其特征在于,所述统计访问词在预设时间间隔的后台服务器访问量的步骤包括:

    获取所有客户端的访问请求记录,所述访问请求记录包括访问时间、访问地址、访问词;

    根据原子递增方法统计预设时间间隔每个访问词的访问量。

    3.根据权利要求1所述的数据缓存方法,其特征在于,所述将所述内容数据由redis存储端缓存至客户端的步骤之后还包括:

    每间隔一预设时间查询所述热点词在所述预设时间内是否形成新的内容数据;

    若是,则判断所述热点词在周期内后台服务器访问数量是否达到第二预设值;

    若是,则将所述新的内容数据由所述redis存储端缓存至所述客户端。

    4.根据权利要求2所述的数据缓存方法,其特征在于,所述将所述内容数据由redis存储端缓存至客户端的步骤之后包括:

    判断所述客户端提出的访问请求中的访问词是否为所述热点词或所述温点词;

    若是,则在客户端调取所述热点词或所述温点词对应的内容数据。

    5.一种数据缓存系统,其特征在于,所述系统包括:

    统计模块:用于统计访问词在预设时间间隔的后台服务器访问量;

    调取模块:用于当所述访问词的访问量达到第一预设阈值时,标记所述访问词为热点词,调取所述热点词对应的内容数据;

    存储模块:用于将所述内容数据由redis存储端缓存至客户端;

    标记模块:用于当所述热点词的预设的时间内后台服务器访问量低于第一预设值时,标记所述热点词为温点词;

    清理模块:用于当所述温点词的预设的时间内后台服务器访问量低于第二预设值时,清除所述客户端对应的所述内容数据。

    6.根据权利要求5所述的数据缓存系统,其特征在于,所述系统还包括:

    读取单元:用于获取所有客户端的访问请求记录,所述访问请求记录包括访问时间、访问地址、访问词;

    计数单元:用于根据原子递增方法统计预设时间间隔每个访问词的访问量。

    7.根据权利要求5所述的数据缓存系统,其特征在于,所述系统还包括:

    查询更新模块:用于每间隔一预设时间查询所述热点词在所述预设时间内是否形成新的内容数据;若是,则判断所述热点词在周期内后台服务器访问数量是否达到第二预设值;若是,则将所述新的内容数据由所述redis存储端缓存至所述客户端。

    8.根据权利要求5所述的数据缓存系统,其特征在于,所述系统还包括:

    调用模块:用于判断所述客户端提出的访问请求中的访问词是否为所述热点词或所述温点词;若是,则在客户端调取所述热点词或所述温点词对应的内容数据。

    9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4任一所述的数据缓存方法。

    10.一种数据缓存设备,其特征在于,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-4任一所述的数据缓存方法。

    技术总结
    本申请涉及一种数据缓存方法、系统、存储介质及设备,该方法包括:统计访问词在预设时间间隔的后台服务器访问量;当访问词的访问量达到第一预设阈值时,标记访问词标记为热点词,调取热点词对应的内容数据;将内容数据由redis存储端缓存至客户端;当热点词的预设的时间后台服务器访问量低于第一预设值时,标记热点词为温点词;当温点词的预设的时间后台服务器访问量低于第二预设值时,清除客户端对应的内容数据。通过本申请,合理分配利用redis存储端的缓存空间,提升了数据查询的响应效率和查询系统稳定性。

    技术研发人员:陈晓丽;范渊;刘博
    受保护的技术使用者:杭州安恒信息技术股份有限公司
    技术研发日:2020.11.27
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-21277.html

    最新回复(0)