CN106021445A - 一种加载缓存数据的方法及装置 - Google Patents

一种加载缓存数据的方法及装置 Download PDF

Info

Publication number
CN106021445A
CN106021445A CN201610324104.7A CN201610324104A CN106021445A CN 106021445 A CN106021445 A CN 106021445A CN 201610324104 A CN201610324104 A CN 201610324104A CN 106021445 A CN106021445 A CN 106021445A
Authority
CN
China
Prior art keywords
data
caching
time
information
load
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610324104.7A
Other languages
English (en)
Other versions
CN106021445B (zh
Inventor
王福财
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nubia Technology Co Ltd
Original Assignee
Nubia Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nubia Technology Co Ltd filed Critical Nubia Technology Co Ltd
Priority to CN201610324104.7A priority Critical patent/CN106021445B/zh
Publication of CN106021445A publication Critical patent/CN106021445A/zh
Application granted granted Critical
Publication of CN106021445B publication Critical patent/CN106021445B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种加载缓存数据的方法及装置,包括:扫描服务访问层,识别包含有预先设置的自动加载信息的接口;根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间。本发明实施例对数据通过自动加载信息和缓存参数信息进行缓存处理,避免了由于缓存失效时大量并发操作导致***雪崩;进一步的,通过对缓存的数据进行排序和缓存判断处理,提高了缓存中数据的利用效益和缓存数据的读取效率。

Description

一种加载缓存数据的方法及装置
技术领域
本文涉及但不限于数据处理技术,尤指一种加载缓存数据的方法及装置。
背景技术
随着互联网规模的不断扩大,互联网用户群的日益增长,对电商网站也提出了新的要求。当网站面临百万用户频繁访问时,***的响应速度直接影响用户访问网站的体验。
通过使用缓存技术提高网站访问速度其中一项关键技术。在很多大型网站上,已广泛使用Redis(Redis是一个开源的使用美国国家标准学会(ANSI)C语言编写、支持网络、可基于内存亦可持久化的日志型、键值(Key-Value)数据库,并提供多种语言的应用程序编程接口(API))、memcached(Memcached是一个高性能的分布式内存对象缓存***,用于动态网页(Web)应用以减轻数据库负载)等相关内存缓存技术。但同时内存缓存技术也受限于***的物理内存大小,在开启虚拟内存功能的时候,如果内存用尽,内存缓存技术会把不经常使用的数据存储到磁盘中,这个是由内存缓存技术决定的,相当于业务层把缓存交换策略移交给内存缓存技术来做,一定程度上缺少了数据缓存的灵活性;如果虚拟内存功能被禁止了,内存缓存技术就会用上操作***的虚拟内存,造成涉及缓存数据的网站业务性能会急剧下降。内存缓存技术也可以通过配置选项限定可以使用的物理内存,当达到内存使用上限阀值时,即使给出错误的写入命令提示(但将继续接受自读命令),此时如果有大量并发操作,将直接穿透缓存而访问数据层中的数据,导致***雪崩。另外,相关技术中,缓存数据的缓存命中率不高。
综上,现关的内存缓存技术存在缓存失效时大量并发操作导致***雪崩的问题。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供一种加载缓存数据的方法及装置,能够避免由于缓存失效时大量并发操作导致***雪崩。
本发明实施例提供了一种加载缓存数据的装置,包括:识别单元、缓存单元和读取单元;其中,
识别单元用于,扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
缓存单元用于,根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
读取单元用于,访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
所述缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;
所述数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
可选的,所述缓存单元还用于,所述访问的业务的数据为与包含有自动加载信息的接口对应的数据时,如果读取缓存的数据时未读取到所述访问的业务的数据,从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存。
可选的,所述装置还包括更新单元,
更新单元用于,数据发生更新时,如果更新的数据为与包含有所述自动加载信息的接口上的数据,则更新缓存中包含的与更新的业务相对应的数据。
可选的,所述装置还包括缓存处理单元,用于建立包含所有缓存的所述数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的所述消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;
所述数据状态信息为预先采集的,包括以下至少之一的信息:
所述缓存的数据的在前一次的请求时间、和/或,
所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间、和/或,
所述缓存的数据在预设时长内被访问次数。
可选的,缓存处理单元具体用于,
建立包含所有缓存的所述数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的所述消息队列中读取一个或一个以上数据的数据状态信息;
读取的所述数据状态信息包括所述缓存的数据的在前一次的请求时间时,
***当前时间与所述缓存的数据的所述在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
读取的所述数据状态信息包括所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间时,
若所述缓存的数据的加载次数大于预设的加载次数阈值、和/或所述缓存的数据的加载时间大于预设的加载时间阈值,确定所述缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
读取的所述数据状态信息包括所述缓存的数据在预设时长内的被访问次数时,
所述缓存的数据在所述预设时长内的被访问次数小于预设的访问次数阈值,确定所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
可选的,所述缓存单元还用于,
缓存参数信息包括过期时间时,获取所述缓存的数据的过期时间,以及从数据库加载和缓存所述数据的处理时长,将过期时间减去处理时长获得提前处理时间;
在获得的提前处理时间,如果未进行业务的数据加载,则加载并缓存数据库中所述过期时间达到时与过期时间达到的缓存数据相对应的更新的数据,并缓存。
可选的,所述装置还包括排序单元,
排序单元用于,对所述缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对缓存的数据进行排序。
另一方面,本发明实施例还提供了一种加载缓存数据的方法,包括:
扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
所述缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;
所述数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
可选的,所述访问的业务的数据为与包含有自动加载信息的接口对应的数据时,如果读取缓存的数据时未读取到访问的所述业务的数据,所述方法还包括:从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存。
可选的,所述方法还包括:
数据发生更新时,如果更新的数据为与包含有所述自动加载信息的接口上的数据,则更新缓存中包含的与更新的业务相对应的数据。
可选的,所述方法还包括:
建立包含所有缓存的所述数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的所述消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;
所述数据状态信息为预先采集的,包括以下至少之一的信息:
所述缓存的数据的在前一次的请求时间、和/或,
所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间、和/或,
所述缓存的数据在预设时长内被访问次数。
可选的,所述进行数据的缓存判断处理包括:
所述数据状态信息包括所述缓存的数据的在前一次的请求时间时,
***当前时间与所述缓存的数据的所述在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
所述数据状态信息包括所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间时,
若所述缓存的数据的加载次数大于预设的加载次数阈值、和/或所述缓存的数据的加载时间大于预设的加载时间阈值,确定所述缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
所述数据状态信息包括所述缓存的数据在预设时长内的被访问次数时,
所述缓存的数据在所述预设时长内的被访问次数小于预设的访问次数阈值,确定所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
可选的,缓存参数信息包括过期时间时,所述方法还包括:
获取所述缓存的数据的过期时间,以及从数据库加载和缓存所述数据的处理时长,将过期时间减去处理时长获得提前处理时间;
在获得的提前处理时间,如果未进行业务的数据加载,则加载并缓存数据库中所述过期时间达到时与过期时间达到的缓存的数据相对应的更新的数据,并缓存。
可选的,所述方法还包括:
对缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对所述缓存的数据进行排序。
与相关技术相比,本申请技术方案包括:扫描服务访问层,识别包含有预先设置的自动加载信息的接口;根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间。本发明实施例对数据通过自动加载信息和缓存参数信息进行缓存处理,避免了由于缓存失效时大量并发操作导致***雪崩;进一步的,通过对缓存的数据进行排序和缓存判断处理,提高了缓存中数据的利用效益和缓存数据的读取效率。
在阅读并理解了附图和详细描述后,可以明白其他方面。
附图说明
图1为本发明实施例的服务器的主要电气结构的框图;
图2为本发明实施例加载缓存数据的方法的流程图;
图3为本发明另一实施例加载缓存数据的方法的流程图;
图4为本发明实施例加载缓存数据的装置的结构框图;
图5为本发明应用示例一的方法流程图;
图6为本发明应用示例二的方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
如图1所示,为本发明实施例的服务器的主要电气结构的框图,包括:输入输出(IO)总线、处理器40、存储器41、内存42和通信装置43。其中,
输入输出(IO)总线分别与自身所属的服务器的其它部件(处理器40、存储器41、内存42和通信装置43)连接,并且为其它部件提供传送线路。
处理器40通常控制自身所属的服务器的总体操作。例如,处理器40执行计算和确认等操作。其中,处理器40可以是中央处理器(CPU)。
通信装置43,通常包括一个或多个组件,其允许自身所属的服务器与无线通信***或网络之间的无线电通信。
存储器41存储处理器40可读、处理器可执行的软件代码,其包含用于控制处理器40执行本文描述的功能的指令(即软件执行功能)。
基于上述服务器的电气结构,提出本发明方法的实施例。
图2为本发明实施例加载缓存数据的方法的流程图,如图2所示,包括:
步骤200、扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
需要说明的是,自动加载信息可以是自动加载标记、标识或其他可以将该类接口和其他接口区分的类似的信息。自动加载信息可以根据本领域技术人员对数据是否需要进行自动加载的分析判断进行设置。另外,扫描服务层的操作是对服务访问层进行了惯用操作。
步骤201、根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
这里,缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;其中,数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
步骤202、访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
需要说明的是,预设的方法函数可以包括哈希、消息摘要算法第五版(MD5)等可以生成唯一标识、编码或名称的信息;数据区分标识信息采用接口参数进行组合时可以包括:将接口的参数按照设定的分类组合规律,生成不同缓存的数据相应的数据区分标识信息,其组合生成的信息可以是类似与图书馆馆藏图书的序列号信息;采用接口参数进行组合生成和采用对接口参数采用预设的方法函数进行预算生成可以使生成的数据区分标识信息具有一定的命名规律,方便用户人员在对缓存数据进行分析处理过程中进行识别;本发明实施例还可以采用其他的方式生成数据区分标识信息,只要生成的每一个数据区分标识信息具备唯一性即可。
可选的,访问的业务的数据为与包含有自动加载信息的接口对应的数据时,如果读取缓存的数据时未读取到访问的业务的数据,本发明实施例方法还包括:从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存。
需要说明的是,这里,读取缓存的数据时未读取到访问的业务的数据包括:按照本发明实施例从缓存的数据中读取访问的业务的数据时发生错误或失败,读取数据错误或失败可以通过相关技术中数据读取是否成功的判断方法进行实施。
可选的,本发明实施例方法还包括:
数据发生更新时,如果更新的数据为与包含有自动加载信息的接口上的数据,则更新缓存中包含的与更新的业务相对应的数据。
需要说明的是,这里,数据发生更新包括业务的数据发生更新,业务数据的更新可以通过***在进行更新时涉及的***参数进行确定,例如、配置日志、***日志、运行日志以及其他记录数据变化的文件内容进行判断。另外,数据更新方法可以包括采用相关技术中对更新的数据对应的原数据的存储路径进行确定,将确定的原数据的存储路径上的数据删除后,将更新的业务的数据进行加载和写入缓存的操作。
可选的,本发明实施例方法还包括:
建立包含所有缓存的数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;这里,预设的取出策略包括,按照消息队列的排序逐一读取数据的数据状态信息。
数据状态信息为预先采集的,包括以下至少之一的信息:
缓存的数据的在前一次的请求时间、和/或,
缓存的数据的加载次数及每一次加载缓存的数据的时间、和/或,
缓存的数据在预设时长内被访问次数。
需要说明的是,数据状态信息包含的内容可以根据***缓存流量、业务访问速度等进行是否作为数据状态信息的参考,本领域技术人员可以根据本发明实施例的使用场景进行添加和删减。
可选的,进行数据的缓存判断处理包括:
数据状态信息包括缓存的数据的在前一次的请求时间时,
***当前时间与缓存的数据的在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
数据状态信息包括缓存的数据的加载次数及每一次加载缓存的数据的时间时,
若缓存的数据的加载次数大于预设的加载次数阈值、和/或缓存的数据的加载时间大于预设的加载时间阈值,确定缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
数据状态信息包括缓存的数据在预设时长内的被访问次数时,
缓存的数据在预设时长内的被访问次数小于预设的访问次数阈值,确定数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
需要说明的是,每一次加载缓存数据的时间可以通过加载缓存的数据的次数的总时间和加载的次数进行计算。另外,缓存的数据在预设时长内访问次数小于预设的访问次数阈值的判断可以包括:通过记录首次访问缓存的数据的时间,将***当前时间减去首次访问缓存的数据的时间获得访问时长,统计访问时长达到预设时长时缓存的数据的被访问次数,例如、通过首次访问开始后一个小时内缓存的数据的被访问次数,如果被访问次数小于访问次数阈值,例如访问次数阈值为60,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;如果不是从首次访问的缓存的数据的时间开始计时,则按照预设时长统计缓存的数据的被访问次数即可。
另外,本发明实施例中,从消息队列中读取缓存数据信息可以采用多个进程并行的方式进行,以此可以提高缓存判断处理的速度。
可选的,缓存参数信息包括过期时间时,本发明实施例方法还包括:
获取缓存的数据的过期时间,以及从数据库加载和缓存数据的处理时长,将过期时间减去处理时长获得提前处理时间;
在获得的提前处理时间,如果未进行业务的数据加载,则加载并缓存数据库中过期时间达到时与过期时间达到的缓存数据相对应的更新的数据,并缓存。
可选的,本发明实施例方法还包括:
对缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对缓存的数据进行排序。
需要说明的是,排序方法可以根据***要求由本领域技术人员进行分析判断获得,如果***要求请求响应效率快,则请求频率高的数据可以缓存在排序在前的位置,便于高效的读取;如果加载耗时时长较长会影响读取其他业务的数据,则加载耗时时长较长的数据可以缓存在排序后面的位置,避免对影响其他缓存的数据的读取。
本发明实施例方法对数据通过自动加载信息和缓存参数信息进行缓存处理,避免了由于缓存失效时大量并发操作导致***雪崩;进一步的,通过对缓存的数据进行排序和缓存判断处理,提高了缓存中数据的利用效益和缓存数据的读取效率。
图3为本发明另一实施例加载缓存数据的方法的流程图,如图3所示,包括:
步骤300、扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
需要说明的是,自动加载信息可以是自动加载标记、标识或其他可以将该类接口和其他接口区分的类似的信息。自动加载信息可以根据本领域技术人员对数据是否需要进行自动加载的分析判断进行设置。另外,扫描服务层的操作是对服务访问层进行了惯用操作。
步骤301、根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
这里,缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;其中,数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
步骤302、建立包含所有缓存的数据的数据状态信息的消息队列,按照预设的取出策略,从建立的消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;
这里,数据状态信息为预先采集的,包括以下至少之一的信息:
缓存的数据的在前一次的请求时间、和/或,
缓存的数据的加载次数及每一次加载缓存的数据的时间、和/或,
缓存的数据在预设时长内被访问次数。
需要说明的是,数据状态信息包含的内容可以根据***缓存流量、业务访问速度等进行是否作为数据状态信息的参考,本领域技术人员可以根据本发明实施例的使用场景进行添加和删减。
可选的,进行数据的缓存判断处理包括:
数据状态信息包括缓存的数据的在前一次的请求时间时,
***当前时间与缓存的数据的在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
数据状态信息包括缓存的数据的加载次数及每一次加载缓存的数据的时间时,
若缓存的数据的加载次数大于预设的加载次数阈值、和/或缓存的数据的加载时间大于预设的加载时间阈值,确定缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
数据状态信息包括缓存的数据在预设时长内的被访问次数时,
缓存的数据在预设时长内的被访问次数小于预设的访问次数阈值,确定数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
需要说明的是,每一次加载缓存数据的时间可以通过加载缓存的数据的次数的总时间和加载的次数进行计算。另外,缓存的数据在预设时长内访问次数小于预设的访问次数阈值的判断可以包括:通过记录首次访问缓存的数据的时间,将***当前时间减去首次访问缓存的数据的时间获得访问时长,统计访问时长达到预设时长时缓存的数据的被访问次数,例如、通过首次访问开始后一个小时内缓存的数据的被访问次数,如果被访问次数小于访问次数阈值,例如访问次数阈值为60,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;如果不是从首次访问的缓存的数据的时间开始计时,则按照预设时长统计缓存的数据的被访问次数即可。
另外,本发明实施例中,从消息队列中读取缓存数据信息可以采用多个进程并行的方式进行,以此可以提高缓存判断处理的速度。
步骤303、对缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对缓存的数据进行排序。
需要说明的是,排序方法可以根据***要求由本领域技术人员进行分析判断获得,如果***要求请求响应效率快,则请求频率高的数据可以缓存在排序在前的位置,便于高效的读取;如果加载耗时时长较长会影响读取其他业务的数据,则加载耗时时长较长的数据可以缓存在排序后面的位置,避免对影响其他缓存的数据的读取。
步骤304、访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
需要说明的是,预设的方法函数可以包括哈希、消息摘要算法第五版(MD5)等可以生成唯一标识、编码或名称的信息;数据区分标识信息采用接口参数进行组合时可以包括:将接口的参数按照设定的分类组合规律,生成不同缓存的数据相应的数据区分标识信息,其组合生成的信息可以是类似与图书馆馆藏图书的序列号信息;采用接口参数进行组合生成和采用对接口参数采用预设的方法函数进行预算生成可以使生成的数据区分标识信息具有一定的命名规律,方便用户人员在对缓存数据进行分析处理过程中进行识别;本发明实施例还可以采用其他的方式生成数据区分标识信息,只要生成的每一个数据区分标识信息具备唯一性即可。
步骤305、访问的业务的数据为与包含有自动加载信息的接口对应的数据时,如果读取缓存的数据时未读取到访问的业务的数据,从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存。
需要说明的是,这里,读取缓存的数据时未读取到访问的业务的数据包括:按照本发明实施例从缓存的数据中读取访问的业务的数据时发生错误或失败,读取数据错误或失败可以通过相关技术中数据读取是否成功的判断方法进行实施。
可选的,缓存参数信息包括过期时间时,本发明实施例方法还包括:
获取缓存的数据的过期时间,以及从数据库加载和缓存数据的处理时长,将过期时间减去处理时长获得提前处理时间;
在获得的提前处理时间,如果未进行业务的数据加载,则加载并缓存数据库中过期时间达到时与过期时间达到的缓存数据相对应的更新的数据,并缓存。
可选的,本发明实施例方法还包括:
数据发生更新时,如果更新的数据为与包含有自动加载信息的接口上的数据,则更新缓存中包含的与更新的业务相对应的数据。
需要说明的是,这里,数据发生更新包括业务的数据发生更新,业务数据的更新可以通过***在进行更新时涉及的***参数进行确定,例如、配置日志、***日志、运行日志以及其他记录数据变化的文件内容进行判断。另外,数据更新方法可以包括采用相关技术中对更新的数据对应的原数据的存储路径进行确定,将确定的原数据的存储路径上的数据删除后,将更新的业务的数据进行加载和写入缓存的操作。
图4为本发明实施例加载缓存数据的装置的结构框图,如图4所示,包括:识别单元、缓存单元和读取单元;其中,
识别单元用于,扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
缓存单元用于,根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
可选的,缓存单元还用于,访问的业务的数据为与包含有自动加载信息的接口对应的数据时,如果读取缓存的数据时未读取到访问的业务的数据,从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存。
这里,读取缓存的数据时未读取到访问的业务的数据包括:按照本发明实施例从缓存的数据中读取访问的业务的数据时发生错误或失败,读取数据错误或失败可以通过相关技术中数据读取是否成功的判断方法进行实施。
可选的,缓存单元还用于,
缓存参数信息包括过期时间时,获取缓存的数据的过期时间,以及从数据库加载和缓存数据的处理时长,将过期时间减去处理时长获得提前处理时间;
在获得的提前处理时间,如果未进行业务的数据加载,则加载并缓存数据库中过期时间达到时与过期时间达到的缓存数据相对应的更新的数据,并缓存。
读取单元用于,访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;
数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
需要说明的是,自动加载信息可以是自动加载标记、标识或其他可以将该类接口和其他接口区分的类似的信息。自动加载信息可以根据本领域技术人员对数据是否需要进行自动加载的分析判断进行设置。另外,预设的方法函数可以包括哈希、消息摘要算法第五版(MD5)等可以生成唯一标识、编码或名称的信息;数据区分标识信息采用接口参数进行组合时可以包括:将接口的参数按照设定的分类组合规律,生成不同缓存的数据相应的数据区分标识信息,其组合生成的信息可以是类似与图书馆馆藏图书的序列号信息;采用接口参数进行组合生成和采用对接口参数采用预设的方法函数进行预算生成可以使生成的数据区分标识信息具有一定的命名规律,方便用户人员在对缓存数据进行分析处理过程中进行识别;本发明实施例还可以采用其他的方式生成数据区分标识信息,只要生成的每一个数据区分标识信息具备唯一性即可。
可选的,本发明实施例装置还包括更新单元,
更新单元用于,数据发生更新时,如果更新的数据为与包含有自动加载信息的接口上的数据,则更新缓存中包含的与更新的业务相对应的数据。
需要说明的是,这里,数据发生更新包括业务的数据发生更新,业务数据的更新可以通过***在进行更新时涉及的***参数进行确定,例如、配置日志、***日志、运行日志以及其他记录数据变化的文件内容进行判断。另外,数据更新方法可以包括采用相关技术中对更新的数据对应的原数据的存储路径进行确定,将确定的原数据的存储路径上的数据删除后,将更新的业务的数据进行加载和写入缓存的操作。
可选的,本发明实施例装置还包括缓存处理单元,用于建立包含所有缓存的数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;
数据状态信息为预先采集的,包括以下至少之一的信息:
缓存的数据的在前一次的请求时间、和/或,
缓存的数据的加载次数及每一次加载缓存的数据的时间、和/或,
缓存的数据在预设时长内被访问次数。
需要说明的是,数据状态信息包含的内容可以根据***缓存流量、业务访问速度等进行是否作为数据状态信息的参考,本领域技术人员可以根据本发明实施例的使用场景进行添加和删减。
可选的,缓存处理单元具体用于,
建立包含所有缓存的数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的消息队列中读取一个或一个以上数据的数据状态信息;
读取的数据状态信息包括缓存的数据的在前一次的请求时间时,
***当前时间与缓存的数据的在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
读取的数据状态信息包括缓存的数据的加载次数及每一次加载缓存的数据的时间时,
若缓存的数据的加载次数大于预设的加载次数阈值、和/或缓存的数据的加载时间大于预设的加载时间阈值,确定缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
读取的数据状态信息包括缓存的数据在预设时长内的被访问次数时,
缓存的数据在预设时长内的被访问次数小于预设的访问次数阈值,确定数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
需要说明的是,每一次加载缓存数据的时间可以通过加载缓存的数据的次数的总时间和加载的次数进行计算。另外,缓存的数据在预设时长内访问次数小于预设的访问次数阈值的判断可以包括:通过记录首次访问缓存的数据的时间,将***当前时间减去首次访问缓存的数据的时间获得访问时长,统计访问时长达到预设时长时缓存的数据的被访问次数,例如、通过首次访问开始后一个小时内缓存的数据的被访问次数,如果被访问次数小于访问次数阈值,例如访问次数阈值为60,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;如果不是从首次访问的缓存的数据的时间开始计时,则按照预设时长统计缓存的数据的被访问次数即可。
另外,本发明实施例中,从消息队列中读取缓存数据信息可以采用多个进程并行的方式进行,以此可以提高缓存判断处理的速度。
本发明实施例装置还包括排序单元,
排序单元用于,对缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对缓存的数据进行排序。
需要说明的是,排序方法可以根据***要求由本领域技术人员进行分析判断获得,如果***要求请求响应效率快,则请求频率高的数据可以缓存在排序在前的位置,便于高效的读取;如果加载耗时时长较长会影响读取其他业务的数据,则加载耗时时长较长的数据可以缓存在排序后面的位置,避免对影响其他缓存的数据的读取。
本发明实施例装置可以设置在服务器上进行工作,也可以通过与服务器进行通信连接后进行工作。
本发明另一实施例加载缓存数据的装置,包括:识别单元、缓存单元、读取单元、更新单元、缓存处理单元和排序单元;其中,
识别单元用于,扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
缓存单元用于,根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
读取单元用于,访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;
数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
需要说明的是,自动加载信息可以是自动加载标记、标识或其他可以将该类接口和其他接口区分的类似的信息。自动加载信息可以根据本领域技术人员对数据是否需要进行自动加载的分析判断进行设置。另外,预设的方法函数可以包括哈希、消息摘要算法第五版(MD5)等可以生成唯一标识、编码或名称的信息;数据区分标识信息采用接口参数进行组合时可以包括:将接口的参数按照设定的分类组合规律,生成不同缓存的数据相应的数据区分标识信息,其组合生成的信息可以是类似与图书馆馆藏图书的序列号信息;采用接口参数进行组合生成和采用对接口参数采用预设的方法函数进行预算生成可以使生成的数据区分标识信息具有一定的命名规律,方便用户人员在对缓存数据进行分析处理过程中进行识别;本发明实施例还可以采用其他的方式生成数据区分标识信息,只要生成的每一个数据区分标识信息具备唯一性即可。
更新单元用于,数据发生更新时,如果更新的数据为与包含有自动加载信息的接口上的数据,则更新缓存中包含的与更新的业务相对应的数据。
需要说明的是,这里,数据发生更新包括业务的数据发生更新,业务数据的更新可以通过***在进行更新时涉及的***参数进行确定,例如、配置日志、***日志、运行日志以及其他记录数据变化的文件内容进行判断。另外,数据更新方法可以包括采用相关技术中对更新的数据对应的原数据的存储路径进行确定,将确定的原数据的存储路径上的数据删除后,将更新的业务的数据进行加载和写入缓存的操作。
缓存处理单元,用于建立包含所有缓存的数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;
数据状态信息为预先采集的,包括以下至少之一的信息:
缓存的数据的在前一次的请求时间、和/或,
缓存的数据的加载次数及每一次加载缓存的数据的时间、和/或,
缓存的数据在预设时长内被访问次数。
需要说明的是,数据状态信息包含的内容可以根据***缓存流量、业务访问速度等进行是否作为数据状态信息的参考,本领域技术人员可以根据本发明实施例的使用场景进行添加和删减。
可选的,缓存处理单元具体用于,
建立包含所有缓存的数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的消息队列中读取一个或一个以上数据的数据状态信息;
读取的数据状态信息包括缓存的数据的在前一次的请求时间时,
***当前时间与缓存的数据的在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
读取的数据状态信息包括缓存的数据的加载次数及每一次加载缓存的数据的时间时,
若缓存的数据的加载次数大于预设的加载次数阈值、和/或缓存的数据的加载时间大于预设的加载时间阈值,确定缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
读取的数据状态信息包括缓存的数据在预设时长内的被访问次数时,
缓存的数据在预设时长内的被访问次数小于预设的访问次数阈值,确定数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
需要说明的是,每一次加载缓存数据的时间可以通过加载缓存的数据的次数的总时间和加载的次数进行计算。另外,缓存的数据在预设时长内访问次数小于预设的访问次数阈值的判断可以包括:通过记录首次访问缓存的数据的时间,将***当前时间减去首次访问缓存的数据的时间获得访问时长,统计访问时长达到预设时长时缓存的数据的被访问次数,例如、通过首次访问开始后一个小时内缓存的数据的被访问次数,如果被访问次数小于访问次数阈值,例如访问次数阈值为60,确定缓存的数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;如果不是从首次访问的缓存的数据的时间开始计时,则按照预设时长统计缓存的数据的被访问次数即可。
另外,本发明实施例中,从消息队列中读取缓存数据信息可以采用多个进程并行的方式进行,以此可以提高缓存判断处理的速度。
排序单元用于,对缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对缓存的数据进行排序。
需要说明的是,排序方法可以根据***要求由本领域技术人员进行分析判断获得,如果***要求请求响应效率快,则请求频率高的数据可以缓存在排序在前的位置,便于高效的读取;如果加载耗时时长较长会影响读取其他业务的数据,则加载耗时时长较长的数据可以缓存在排序后面的位置,避免对影响其他缓存的数据的读取。
可选的,缓存单元还用于,访问的业务的数据为与包含有自动加载信息的接口对应的数据时,如果读取缓存的数据时未读取到访问的业务的数据,从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存。
这里,读取缓存的数据时未读取到访问的业务的数据包括:按照本发明实施例从缓存的数据中读取访问的业务的数据时发生错误或失败,读取数据错误或失败可以通过相关技术中数据读取是否成功的判断方法进行实施。
可选的,缓存单元还用于,
缓存参数信息包括过期时间时,获取缓存的数据的过期时间,以及从数据库加载和缓存数据的处理时长,将过期时间减去处理时长获得提前处理时间;
在获得的提前处理时间,如果未进行业务的数据加载,则加载并缓存数据库中过期时间达到时与过期时间达到的缓存数据相对应的更新的数据,并缓存。
本发明实施例装置可以设置在服务器上进行工作,也可以通过与服务器进行通信连接后进行工作。
以下通过应用示例对本发明方法进行清楚详细的说明,应用示例仅用于陈述本发明实施例,并不用于限定本发明的保护范围。
应用示例1
图5为本发明应用示例一的方法流程图,如图5所示,包括:
步骤500、扫描服务访问层,读取有设置自动加载信息的接口,通过自动加载信息确定是否自动加载数据;本应用示例自动加载信息可以包括自动加载标记;
步骤501、根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;这里,缓存的数据可以写入到缓存中心;
本应用示例,缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;其中,数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
步骤502、访问的业务数据为与包含有自动加载信息的接口对应的数据时,判断是否读取到缓存的数据;如果读取到缓存的数据,执行步骤5030;如果未读取到缓存的数据,执行步骤5040;
步骤5030、读取缓存的数据,实现业务访问处理;
步骤5040、从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存;执行步骤5040之后,应用示例可以根据缓存的数据实现业务访问处理,即可以执行步骤5030。
本应用示例,在完成数据的缓存后,应用示例可以返回数据的结果集。
步骤5031、当业务更新数据时,更新缓存中包含的与更新的业务相对应的数据。
业务更新数据可以包括后台管理对产品详情也做了修改等,例如,配置参数修改、产品型号修改等;
需要说明的是,缓存更新时,更新的数据按照相关技术的处理方法会同步写入到数据库中进行相应的更新。
应用示例2
本应用示例首先需要建立包含所有缓存的数据的数据状态信息的消息队列;数据状态信息为预先采集的,包括:缓存的数据的在前一次的请求时间、缓存的数据的加载次数及每一次加载缓存的数据的时间、和/或缓存的数据在预设时长内被访问次数。本应用示例以一个进程每次读取消息队列中的第一项数据状态信息为例进行说明;图6为本发明应用示例二的方法流程图,如图6所示,包括:
步骤600、从消息队列读取当前队列的第一个数据状态信息;
步骤601、从数据状态信息中获得缓存的数据的在前一次的请求时间,读取当前***时间;
需要说明的是,请求时间和当前***时间等信息可以采用相关技术中的采集方法进行实施。
步骤602、***当前时间与缓存的数据的在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的数据为非热点缓存数据;
请求间隔阈值可以根据业务访问时效需求和***性能等参数进行分析设定。
步骤603、将确定为非热点缓存数据从缓存中删除;
步骤604、从数据状态信息中获得缓存的数据的在预设时长内的被访问次数;
步骤605、缓存的数据在预设时长内的被访问次数小于预设的访问次数阈值,确定数据为非热点缓存数据;对非热点缓存数据按照步骤603进行处理。
本应用示例预设时长可以为1个小时,访问次数阈值60次;
步骤606、从数据状态信息中获得缓存的数据的加载次数及每一次加载缓存的数据的时间;
步骤607、若缓存的数据的加载次数大于预设的加载次数阈值、和/或缓存的数据的加载时间大于预设的加载时间阈值,确定缓存的数据为热点但时间可控的数据;
本应用示例加载次数阈值可以100,加载时间阈值可以包括10~100毫秒;实际数值可以根据请求数进行确定;
步骤608、将确定为热点但时间可控的数据从缓存中删除;
需要说明的是,执行上述步骤时,数据状态信息根据执行步骤的内容进行更新。
本应用示例还包括:对缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对缓存的数据进行排序。
需要说明的是,排序进程可以通过启动单独的进程进行,按照设置的策略对消息队列进行排序,排序算法可以包括:越接近过期时间、和/或越耗时的缓存数据,排序越前。根据请求次数进行倒序排序,请求次数越多,说明使用频率越高,造成并发的可能越大。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的每个模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明不限制于任何特定形式的硬件和软件的结合。”。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (10)

1.一种加载缓存数据的装置,其特征在于,包括:识别单元、缓存单元和读取单元;其中,
识别单元用于,扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
缓存单元用于,根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
读取单元用于,访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
所述缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;
所述数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
2.根据权利要求1所述的装置,其特征在于,所述缓存单元还用于,所述访问的业务的数据为与包含有自动加载信息的接口对应的数据时,如果读取缓存的数据时未读取到所述访问的业务的数据,从数据库中对访问的业务的数据所对应的包含有自动加载信息的接口的数据进行加载并缓存。
3.根据权利要求1所述的装置,其特征在于,所述装置还包括更新单元,
更新单元用于,数据发生更新时,如果更新的数据为与包含有所述自动加载信息的接口上的数据,则更新缓存中包含的与更新的业务相对应的数据。
4.根据权利要求1~3任一项所述的装置,其特征在于,所述装置还包括缓存处理单元,用于建立包含所有缓存的所述数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的所述消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;
所述数据状态信息为预先采集的,包括以下至少之一的信息:
所述缓存的数据的在前一次的请求时间、和/或,
所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间、和/或,
所述缓存的数据在预设时长内被访问次数。
5.根据权利要求4所述的装置,其特征在于,所述缓存处理单元具体用于,
建立包含所有缓存的所述数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的所述消息队列中读取一个或一个以上数据的数据状态信息;
读取的所述数据状态信息包括所述缓存的数据的在前一次的请求时间时,
***当前时间与所述缓存的数据的所述在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
读取的所述数据状态信息包括所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间时,
若所述缓存的数据的加载次数大于预设的加载次数阈值、和/或所述缓存的数据的加载时间大于预设的加载时间阈值,确定所述缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
读取的所述数据状态信息包括所述缓存的数据在预设时长内的被访问次数时,
所述缓存的数据在所述预设时长内的被访问次数小于预设的访问次数阈值,确定所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
6.根据权利要求1~3任一项所述的装置,其特征在于,所述缓存单元还用于,
缓存参数信息包括过期时间时,获取所述缓存的数据的过期时间,以及从数据库加载和缓存所述数据的处理时长,将过期时间减去处理时长获得提前处理时间;
在获得的提前处理时间,如果未进行业务的数据加载,则加载并缓存数据库中所述过期时间达到时与过期时间达到的缓存数据相对应的更新的数据,并缓存。
7.根据权利要求1~3任一项所述的装置,其特征在于,所述装置还包括排序单元,
排序单元用于,对所述缓存的数据,根据过期时间、和/或加载耗时时长、和/或数据的请求频率对缓存的数据进行排序。
8.一种加载缓存数据的方法,其特征在于,包括:
扫描服务访问层,识别包含有预先设置的自动加载信息的接口;
根据预设的缓存参数信息加载数据库中与识别到的包含有自动加载信息接口对应的数据并缓存;
访问的业务的数据为与包含有自动加载信息的接口对应的数据时,读取缓存的数据,实现业务访问处理;
所述缓存参数信息包括:预设设定的数据区分标识信息、和/或缓存条件信息、和/或过期时间;
所述数据区分标识信息包括:根据接口参数进行组合、和/或对接口参数采用预设的方法函数进行换算生成。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
建立包含所有缓存的所述数据的数据状态信息的消息队列;
按照预设的取出策略,从建立的所述消息队列中读取一个或一个以上数据的数据状态信息,根据读取的数据状态信息进行数据的缓存判断处理;
所述数据状态信息为预先采集的,包括以下至少之一的信息:
所述缓存的数据的在前一次的请求时间、和/或,
所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间、和/或,
所述缓存的数据在预设时长内被访问次数。
10.根据权利要求9所述的方法,其特征在于,所述进行数据的缓存判断处理包括:
所述数据状态信息包括所述缓存的数据的在前一次的请求时间时,
***当前时间与所述缓存的数据的所述在前一次的请求时间的差值大于预设的请求间隔阈值时,确定缓存的所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除;和/或,
所述数据状态信息包括所述缓存的数据的加载次数及每一次加载所述缓存的数据的时间时,
若所述缓存的数据的加载次数大于预设的加载次数阈值、和/或所述缓存的数据的加载时间大于预设的加载时间阈值,确定所述缓存的数据为热点但时间可控的数据,将确定为热点但时间可控的数据从缓存中删除;和/或,
所述数据状态信息包括所述缓存的数据在预设时长内的被访问次数时,
所述缓存的数据在所述预设时长内的被访问次数小于预设的访问次数阈值,确定所述数据为非热点缓存数据,将确定为非热点缓存数据从缓存中删除。
CN201610324104.7A 2016-05-16 2016-05-16 一种加载缓存数据的方法及装置 Active CN106021445B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610324104.7A CN106021445B (zh) 2016-05-16 2016-05-16 一种加载缓存数据的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610324104.7A CN106021445B (zh) 2016-05-16 2016-05-16 一种加载缓存数据的方法及装置

Publications (2)

Publication Number Publication Date
CN106021445A true CN106021445A (zh) 2016-10-12
CN106021445B CN106021445B (zh) 2019-10-15

Family

ID=57097977

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610324104.7A Active CN106021445B (zh) 2016-05-16 2016-05-16 一种加载缓存数据的方法及装置

Country Status (1)

Country Link
CN (1) CN106021445B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106815287A (zh) * 2016-12-06 2017-06-09 ***股份有限公司 一种缓存管理方法及装置
CN106843769A (zh) * 2017-01-23 2017-06-13 北京齐尔布莱特科技有限公司 一种接口数据缓存方法、装置和计算设备
CN106874124A (zh) * 2017-03-30 2017-06-20 光科技股份有限公司 一种基于SQLite快速加载技术的面向对象用电信息采集终端
CN107463598A (zh) * 2017-06-09 2017-12-12 中国邮政储蓄银行股份有限公司 分布式缓存***
CN108829743A (zh) * 2018-05-24 2018-11-16 平安科技(深圳)有限公司 缓存数据更新方法、装置、计算机设备以及存储介质
WO2019019382A1 (zh) * 2017-07-27 2019-01-31 上海壹账通金融科技有限公司 缓存处理方法、装置、计算机设备和存储介质
CN109471875A (zh) * 2018-09-25 2019-03-15 网宿科技股份有限公司 基于缓存数据的热度管理方法、服务器及存储介质
CN109597915A (zh) * 2018-09-18 2019-04-09 北京微播视界科技有限公司 访问请求处理方法和装置
CN110109956A (zh) * 2019-03-21 2019-08-09 福建天泉教育科技有限公司 一种防止缓存穿透的方法及终端
CN110555744A (zh) * 2018-05-31 2019-12-10 阿里巴巴集团控股有限公司 一种业务数据的处理方法和***
CN110895474A (zh) * 2018-08-24 2020-03-20 深圳市鸿合创新信息技术有限责任公司 一种终端微服务装置及方法、电子设备
CN111984889A (zh) * 2020-02-21 2020-11-24 广东三维家信息科技有限公司 缓存方法及***
CN112115074A (zh) * 2020-09-02 2020-12-22 紫光云(南京)数字技术有限公司 一种使用自动加载机制实现数据常驻内存方法
CN112559572A (zh) * 2020-12-22 2021-03-26 上海悦易网络信息技术有限公司 一种用于Key-Value缓存***数据缓存预热的方法及设备
WO2021244067A1 (zh) * 2020-06-05 2021-12-09 苏州浪潮智能科技有限公司 一种稀释缓存空间的方法、设备以及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102170479A (zh) * 2011-05-21 2011-08-31 成都市华为赛门铁克科技有限公司 Web缓存的更新方法及Web缓存的更新装置
CN103488581A (zh) * 2013-09-04 2014-01-01 用友软件股份有限公司 数据缓存***和数据缓存方法
WO2014123127A1 (en) * 2013-02-06 2014-08-14 Square Enix Holdings Co., Ltd. Image processing apparatus, method of controlling the same, program and storage medium
CN105302493A (zh) * 2015-11-19 2016-02-03 浪潮(北京)电子信息产业有限公司 一种混合存储阵列中ssd缓存的换入换出控制方法及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102170479A (zh) * 2011-05-21 2011-08-31 成都市华为赛门铁克科技有限公司 Web缓存的更新方法及Web缓存的更新装置
WO2014123127A1 (en) * 2013-02-06 2014-08-14 Square Enix Holdings Co., Ltd. Image processing apparatus, method of controlling the same, program and storage medium
CN103488581A (zh) * 2013-09-04 2014-01-01 用友软件股份有限公司 数据缓存***和数据缓存方法
CN105302493A (zh) * 2015-11-19 2016-02-03 浪潮(北京)电子信息产业有限公司 一种混合存储阵列中ssd缓存的换入换出控制方法及***

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106815287A (zh) * 2016-12-06 2017-06-09 ***股份有限公司 一种缓存管理方法及装置
CN106843769B (zh) * 2017-01-23 2019-08-02 北京齐尔布莱特科技有限公司 一种接口数据缓存方法、装置和计算设备
CN106843769A (zh) * 2017-01-23 2017-06-13 北京齐尔布莱特科技有限公司 一种接口数据缓存方法、装置和计算设备
CN106874124A (zh) * 2017-03-30 2017-06-20 光科技股份有限公司 一种基于SQLite快速加载技术的面向对象用电信息采集终端
CN106874124B (zh) * 2017-03-30 2023-04-14 光一科技股份有限公司 一种基于SQLite快速加载技术的面向对象用电信息采集终端
CN107463598A (zh) * 2017-06-09 2017-12-12 中国邮政储蓄银行股份有限公司 分布式缓存***
WO2019019382A1 (zh) * 2017-07-27 2019-01-31 上海壹账通金融科技有限公司 缓存处理方法、装置、计算机设备和存储介质
WO2019223137A1 (zh) * 2018-05-24 2019-11-28 平安科技(深圳)有限公司 缓存数据更新方法、装置、计算机设备以及存储介质
CN108829743A (zh) * 2018-05-24 2018-11-16 平安科技(深圳)有限公司 缓存数据更新方法、装置、计算机设备以及存储介质
CN110555744A (zh) * 2018-05-31 2019-12-10 阿里巴巴集团控股有限公司 一种业务数据的处理方法和***
CN110895474A (zh) * 2018-08-24 2020-03-20 深圳市鸿合创新信息技术有限责任公司 一种终端微服务装置及方法、电子设备
CN109597915A (zh) * 2018-09-18 2019-04-09 北京微播视界科技有限公司 访问请求处理方法和装置
CN109597915B (zh) * 2018-09-18 2022-03-01 北京微播视界科技有限公司 访问请求处理方法和装置
CN109471875A (zh) * 2018-09-25 2019-03-15 网宿科技股份有限公司 基于缓存数据的热度管理方法、服务器及存储介质
CN109471875B (zh) * 2018-09-25 2021-08-20 网宿科技股份有限公司 基于缓存数据的热度管理方法、服务器及存储介质
CN110109956A (zh) * 2019-03-21 2019-08-09 福建天泉教育科技有限公司 一种防止缓存穿透的方法及终端
CN111984889A (zh) * 2020-02-21 2020-11-24 广东三维家信息科技有限公司 缓存方法及***
WO2021244067A1 (zh) * 2020-06-05 2021-12-09 苏州浪潮智能科技有限公司 一种稀释缓存空间的方法、设备以及介质
US11687271B1 (en) 2020-06-05 2023-06-27 Inspur Suzhou Intelligent Technology Co., Ltd. Method for diluting cache space, and device and medium
CN112115074A (zh) * 2020-09-02 2020-12-22 紫光云(南京)数字技术有限公司 一种使用自动加载机制实现数据常驻内存方法
CN112559572A (zh) * 2020-12-22 2021-03-26 上海悦易网络信息技术有限公司 一种用于Key-Value缓存***数据缓存预热的方法及设备

Also Published As

Publication number Publication date
CN106021445B (zh) 2019-10-15

Similar Documents

Publication Publication Date Title
CN106021445A (zh) 一种加载缓存数据的方法及装置
CN107391653B (zh) 一种分布式NewSQL数据库***及图片数据储存方法
CN102667772B (zh) 文件级分级存储管理***、方法和设备
CN102426594B (zh) 对数据库进行操作的方法和***
CN101493826B (zh) 基于web应用的数据库***及其数据管理方法
US9304966B2 (en) Providing local access to managed content
CN107391758B (zh) 数据库切换方法、装置及设备
CN102523285B (zh) 一种基于对象分布式文件***的存储缓存方法
CN111475757A (zh) 页面更新方法和装置
CN103390041A (zh) 一种基于中间件提供数据服务的方法和***
CN105912428B (zh) 实现源数据实时转化为虚拟机镜像的***及方法
CN111901294A (zh) 一种构建在线机器学习项目的方法及机器学习***
WO2016115957A1 (zh) 一种面向用户与应用的计算机与智能设备加速方法和装置
US20120284231A1 (en) Distributed, asynchronous and fault-tolerant storage system
WO2014155553A1 (ja) 分散処理のための情報処理方法、情報処理装置及びプログラム、並びに分散処理システム
CN104104717A (zh) 投放渠道数据统计方法及装置
US11507277B2 (en) Key value store using progress verification
CN104133783B (zh) 处理分散式缓存数据的方法和装置
CN106021566A (zh) 一种提高单台数据库并发处理能力的方法、装置及***
CN107368608A (zh) 基于arc替换算法的hdfs小文件缓存管理方法
CN104778271A (zh) 一种视频数据的缓存方法及装置
CN110287152A (zh) 一种数据管理的方法以及相关装置
CN104461929B (zh) 基于***的分布式数据缓存方法
CN110008197A (zh) 一种数据处理方法、***及电子设备和存储介质
US11080239B2 (en) Key value store using generation markers

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant