CN110647477A - 数据缓存方法、装置、终端以及计算机可读存储介质 - Google Patents
数据缓存方法、装置、终端以及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110647477A CN110647477A CN201810681133.8A CN201810681133A CN110647477A CN 110647477 A CN110647477 A CN 110647477A CN 201810681133 A CN201810681133 A CN 201810681133A CN 110647477 A CN110647477 A CN 110647477A
- Authority
- CN
- China
- Prior art keywords
- data
- cache block
- target cache
- cached
- time
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供一种数据缓存方法、装置、终端以及计算机可读存储介质,方法包括:在多个线程运行时,获取每个线程中待缓存数据的数据类型;根据数据类型在预设的多个缓存块中确定与数据类型相对应的至少一个目标缓存块;根据目标缓存块确定与目标缓存块相对应的加密方式;利用加密方式将待缓存数据存储至目标缓存块。本发明实现了当存在多个线程运行时,根据数据类型在预设的多个缓存块中确定与数据类型相对应的至少一个目标缓存块,并利用加密方式将待缓存数据存储至目标缓存块,从而实现了当存在多个线程的待缓存数据时,可以分别存储至相对应的目标缓存块中,有效地缩短了每个线程的无效等待时间,保证了每个线程的运行速率。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据缓存方法、装置、终端以及计算机可读存储介质。
背景技术
目前终端应用的更新方式有热更新和冷部署两种,其中,热更新是众多应用程序APP常用的更新方式,简单来说,就是在用户通过应用商店App Store下载App之后,打开App时遇到的即时更新,更新时只需下载安装更新部分的代码即可;冷部署是指APP在AppStore内进行更新,更新时需要重新下载全部的安装包;而热更新相较于冷部署而言,具有更新速度快、数据防丢失等优点。
在应用程序通过热更新的方式进行更新时,会存在多个线程同时运行的情况,此时,为了满足热更新需求、且在多线程情况下保证数据的一致性,一般会将所有的数据存储在一个缓存块中,并在每次访问缓存块时,都需要对其进行加锁。
然而,随着缓存数据的增多,缓存块中的存储数据也会越来越多,为了保证缓存块中数据的稳定可靠性,缓存块的锁的粒度会变得非常大,此时,每个线程的无效等待时间会变得非常长,从而降低了线程的运行速率,影响了用户的良好体验性。
发明内容
本发明实施例提供了一种数据缓存方法、装置、终端以及计算机可读存储介质,用以解决现有技术中存在的每个线程的无效等待时间会变得非常长,从而降低了线程的运行速率,影响了用户的良好体验性的问题。
本发明实施例第一方面提供了一种数据缓存方法,包括:
在多个线程运行时,获取每个线程中待缓存数据的数据类型;
根据所述数据类型在预设的多个缓存块中确定与所述数据类型相对应的至少一个目标缓存块;
根据所述目标缓存块确定与所述目标缓存块相对应的加密方式;
利用所述加密方式将所述待缓存数据存储至所述目标缓存块。
如上所述的方法,在利用所述加密方式将所述待缓存数据存储至所述目标缓存块之后,所述方法还包括:
根据所述目标缓存块确定与所述目标缓存块相对应的清理方式;
获取所述待缓存数据的失效时间;
根据所述失效时间、且利用所述清理方式对所述待缓存数据进行清理。
如上所述的方法,获取所述待缓存数据的失效时间,包括:
获取所述待缓存数据存储至所述目标缓存块的存储时间以及预先设置的所述待缓存数据的有效时间;
根据所述存储时间和有效时间确定所述失效时间。
如上所述的方法,所述方法还包括:
获取预先设置的用于访问所述目标缓存块的更新访问接口;
利用所述更新访问接口对所述目标缓存块内的待缓存数据的失效时间进行更新。
如上所述的方法,所述方法还包括:
获取预先设置的用于管理所述目标缓存块的管理接口;
利用所述管理接口对所述目标缓存块进行管理。
如上所述的方法,所述管理接口包括以下至少之一:
用于读取并配置所述目标缓存块中缓存信息的配置管理接口、用于扩展所述目标缓存块中缓存信息的扩展管理接口、以及用于与用户通信连接的业务管理接口。
本发明实施例第二方面提供了一种数据缓存装置,包括:
获取模块,用于在多个线程运行时,获取每个线程中待缓存数据的数据类型;
确定模块,用于根据所述数据类型在预设的多个缓存块中确定与所述数据类型相对应的至少一个目标缓存块;
所述确定模块,还用于根据所述目标缓存块确定与所述目标缓存块相对应的加密方式;
存储模块,用于利用所述加密方式将所述待缓存数据存储至所述目标缓存块。
如上所述的装置,所述确定模块,还用于在利用所述加密方式将所述待缓存数据存储至所述目标缓存块之后,根据所述目标缓存块确定与所述目标缓存块相对应的清理方式;
所述获取模块,还用于获取所述待缓存数据的失效时间;
所述装置还包括:
清理模块,用于根据所述失效时间、且利用所述清理方式对所述待缓存数据进行清理。
如上所述的装置,所述获取模块,用于:
获取所述待缓存数据存储至所述目标缓存块的存储时间以及预先设置的所述待缓存数据的有效时间;
根据所述存储时间和有效时间确定所述失效时间。
如上所述的装置,所述获取模块,还用于获取预先设置的用于访问所述目标缓存块的更新访问接口;
所述装置还包括:
更新模块,用于利用所述更新访问接口对所述目标缓存块内的待缓存数据的失效时间进行更新。
如上所述的装置,所述获取模块,还用于获取预先设置的用于管理所述目标缓存块的管理接口;
所述装置还包括:
管理模块,用于利用所述管理接口对所述目标缓存块进行管理。
如上所述的装置,所述管理接口包括以下至少之一:
用于读取并配置所述目标缓存块中缓存信息的配置管理接口、用于扩展所述目标缓存块中缓存信息的扩展管理接口、以及用于与用户通信连接的业务管理接口。
本发明实施例第三方面提供了一种数据缓存终端,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如上述第一方面所述的一种数据缓存方法。
本发明实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序;
所述计算机程序被处理器执行以实现如上述第一方面所述的一种数据缓存方法。
本发明实施例提供的数据缓存方法、装置、终端以及计算机可读存储介质,在存在多个线程运行时,根据数据类型在预设的多个缓存块中确定与数据类型相对应的至少一个目标缓存块,并利用加密方式将待缓存数据存储至目标缓存块,从而实现了当存在多个线程的待缓存数据时,可以分别存储至相对应的目标缓存块中,有效地缩短了每个线程的无效等待时间,从而保证了每个线程的运行速率,提高了用户的良好体验性,有利于市场的推广与应用。
附图说明
图1是本发明实施例提供的一种数据缓存方法的流程示意图;
图2为本发明实施例提供的又一种数据缓存方法的流程示意图;
图3为本发明实施例提供的获取所述待缓存数据的失效时间的流程示意图;
图4为本发明实施例提供的另一种数据缓存方法的流程示意图;
图5为本发明实施例提供的再一种数据缓存方法的流程示意图;
图6为本发明具体应用实施例提供的多个缓存块的示意图;
图7为本发明实施例提供的一种数据缓存装置的结构示意图;
图8为本发明实施例提供的一种数据缓存终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤的过程或结构的装置不必限于清楚地列出的那些结构或步骤而是可包括没有清楚地列出的或对于这些过程或装置固有的其它步骤或结构。
图1是本发明实施例提供的一种数据缓存方法的流程示意图;参考附图1所示,本实施例提供了一种数据缓存方法,该方法支持热更新功能,具体的,该方法包括:
S101:在多个线程运行时,获取每个线程中待缓存数据的数据类型;
多个线程运行状态可以包括:多个线程同时运行或者多个线程依次运行,其中,上述的多个线程同时运行是指至少有两个线程同时运行,同理的,多个线程依次运行可以是指至少有两个线程依次运行;而待缓存数据的数据类型可以包括以下至少之一:string数据、int32数据、uint2数据、int64数据以及uint64数据等,其中,string、int32、uint32、int64以及uint64为五种待缓存数据所对应的关键字。
S102:根据数据类型在预设的多个缓存块中确定与数据类型相对应的至少一个目标缓存块;
其中,每一种数据类型的缓存数据可以对应有至少一个缓存块,由于缓存数据可以包括至少以上所例举的五种待缓存数据,此时,缓存块的类型与五种待缓存数据相对应,即缓存块包括五种缓存块,分别用于存储string数据、int32数据、uint32数据、int64数据以及uint64数据。因此,当获取到待缓存数据的数据类型之后,可以确定与该数据类型的缓存数据相对应的至少一个目标缓存块,可以理解的是,一个数据类型的待缓存数据可以对应一个或者多个目标缓存块。
S103:根据目标缓存块确定与目标缓存块相对应的加密方式;
其中,每个缓存块都对应一种加密方式,在确定目标缓存块之后,即可以利用预先存储的映射关系确定与目标缓存块相对应的加密方式,该加密方式可以为读写锁方式,即用于对缓存块的读取操作和/或写入操作进行锁定加密的方式。
S104:利用加密方式将待缓存数据存储至目标缓存块。
在确定加密方式和目标缓存块之后,为了保证待缓存数据的安全可靠性,可以利用上述加密方式将待缓存数据存储在目标缓存块中。这样,当存在多个待缓存数据时,则可以将多个待缓存数据分别存储至相对应的目标缓存块中,有效地保证了目标缓存块中的存储空间,进而提高了待缓存数据的存储速度和存储质量。
本实施例提供的数据缓存方法,在存在多个线程运行时,根据数据类型在预设的多个缓存块中确定与数据类型相对应的至少一个目标缓存块,并利用加密方式将待缓存数据存储至目标缓存块,从而实现了当存在多个线程的待缓存数据时,可以分别存储至相对应的目标缓存块中,有效地缩短了每个线程的无效等待时间,从而保证了每个线程的运行速率,提高了用户的良好体验性,有利于市场的推广与应用。
图2为本发明实施例提供的又一种数据缓存方法的流程示意图;图3为本发明实施例提供的获取待缓存数据的失效时间的流程示意图;在上述实施例的基础上,继续参考附图2-3可知,为了进一步提高该方法的实用性,在利用加密方式将待缓存数据存储至目标缓存块之后,该方法还包括:
S201:根据目标缓存块确定与目标缓存块相对应的清理方式;
其中,每个缓存块都对应一种清理方式,在确定目标缓存块之后,即可以利用预先存储的映射关系确定与目标缓存块相对应的清理方式,该清理方式可以为删除操作,即用于对缓存块内存储的数据进行删除。
S202:获取待缓存数据的失效时间;
具体的,获取待缓存数据的失效时间可以包括:
S2021:获取待缓存数据存储至目标缓存块的存储时间以及预先设置的待缓存数据的有效时间;
其中,存储时间可以为将待缓存数据存储至目标缓存块中的存储时刻,有效时间是指待缓存数据所需要存储的时长。
S2022:根据存储时间和有效时间确定失效时间。
在确定存储时间和有效时间之后,可以将存储时间与有效时间之和作为失效时间,该失效时间即为待缓存数据失效的时刻。
S203:根据失效时间、且利用清理方式对待缓存数据进行清理。
在确定失效时间之后,可以在失效时间到达时,即可按照预设的清理方式将待缓存数据进行清理,从而实现了对目标缓存块中的数据进行定期清理的操作,保证了目标缓存块中的存放空间,便于对其他待缓存数据进行存储,并且可以进一步保证待缓存数据的存储效率。
图4为本发明实施例提供的另一种数据缓存方法的流程示意图;在上述实施例的基础上,继续参考附图4可知,为了进一步提高该方法的实用性,本实施例中的还可以包括:
S301:获取预先设置的用于访问目标缓存块的更新访问接口;
其中,更新访问接口可以为预先设置的find接口,通过find接口可以访问目标缓存块。
S302:利用更新访问接口对目标缓存块内的待缓存数据的失效时间进行更新。
在获取到更新访问接口之后,可以使用更新访问接口(find接口)访问数据,在进行访问数据时,可以更新待缓存数据的过期失效时刻(失效时间),从而使得用户可以根据使用需求对待缓存数据的失效时间进行管理,进一步提高了该方法使用的方便可靠性。
图5为本发明实施例提供的再一种数据缓存方法的流程示意图;在上述实施例的基础上,继续参考附图5可知,为了进一步提高该方法使用的安全可靠性,本实施例中的还可以包括:
S401:获取预先设置的用于管理目标缓存块的管理接口;
其中,管理接口包括以下至少之一:用于读取并配置目标缓存块中缓存信息的配置管理接口、用于扩展目标缓存块中缓存信息的扩展管理接口、以及用于与用户通信连接的业务管理接口。
S402:利用管理接口对目标缓存块进行管理。
具体的,当管理接口为配置管理接口时,利用配置管理接口可以读取、配置并初始化目标缓存块的缓存;当管理接口为扩展管理接口时,利用扩展管理接口可以扩容缓存;当管理接口为业务管理接口时,可以使得业务用户通过业务管理接口获得对应的目标缓存块。
通过管理接口对目标缓存块进行管理,有效地保证了目标缓存块工作的稳定可靠性,并且还提高了目标缓存块使用的灵活性,进而提高了该方法的实用性。
具体应用时,为了应对国内信息流的热更新需求,本应用实施例提出了一种基于多缓存块的自动超时缓存方法,该方法兼顾通用性和高效性,并可以在athena在线推荐服务中进行实现。
具体的,该方法是一种在推荐系统中提供多缓存块自动超时缓存机制的方法,并提供了缓存管理的机制,该方法通过多个缓存块减少系统抖动,统一的超时自动清理稳定缓存使用率,以及多种主键数据类型支持来提高通用性;具有多分块、超时自动清理以及多种主键数据类型支持三个特性:
(1)多分块(缓存块)机制:在多线程情况下,为了保证数据的一致性,由于在每次访问缓存块时,都需要对其进行加锁;基于此,采用多分块缓存机制,即用多个缓存块来存储数据,每个缓存块都对应一把读写锁(加密方式)和一个清理线程(清理方式),如图6所示,存在线程1、线程2、线程3以及线程4,对应的,每个线程均可以存储至相对应的缓存块1、缓存块2、缓存块3以及缓存块4中,而每个缓存块又分别对应有锁1、锁2、锁3以及锁4,这样,每个缓存块所对应的锁的粒度就会降低,进而每个线程的无效等待时间也会被控制在一个可接受的范围内。
(2)超时自动清理:可以将哈希表作为缓存块的存储结构,在每个值对象中都加入描述过期失效时刻的数据成员。当将一个待缓存数据放入缓存块中时,会自动将当前时刻(存储时间)与超时时间间隔(有效时间)之和作为过期失效时刻(失效时间)保存到键值对中。
同时可以提供两种访问接口,一种为find接口,另一种为find Silently接口接口,其中,使用find接口(更新访问接口)访问数据时,会更新过期失效时刻;而使用findSilently接口时,则不会更新过期失效时刻。
进一步的,每个缓存块都有一个清理线程,该线程会定期清理缓存块中超时的数据,以留出空间供其它数据使用。
(3)多种主键数据类型:为了提高缓存的通用性,本实施例中设计了五种主键数据类型的多分块缓存,分别为string、int32、uint32、int64以及uint64五种类型的关键字提供支持;在使用缓存之前,缓存管理器会根据数据类型选择相应的目标缓存块提供给用户。
其中,缓存管理器用于管理多个缓存块,缓存块分别对应五种主键数据类型。进一步的,还可以设置有update、add和get三种接口,其中,使用update接口读取、配置并初始化缓存块的缓存,使用add接口扩容缓存,业务方使用get接口获得对应的缓存块。
本实施例提供的方法,采用多个缓存块来存储相应的待缓存数据,有效地减少了系统抖动,降低锁的粒度,提升服务性能;采用统一的超时自动清理,保证空闲缓存的数量;采用多种主键数据类型支持,提高通用性。
并且,使用本实施例提供的数据缓存方法,业务方只需要调用高速缓存管理器,即在使用时,通过一个函数调用get接口,就能获取对应的缓存块,并可以通过对高速缓存的访问接口来进行查找、增加数据等操作;把具体实现与业务逻辑隔离之后,使用过程之中不需关心底层实现的变化,方便专注于业务逻辑的开发,有利于技术的发展。
图7为本发明实施例提供的一种数据缓存装置的结构示意图;参考附图7所示,本实施例提供了一种数据缓存装置,该缓存装置可以执行上述的缓存方法,具体的,该装置可以包括:
获取模块1,用于在多个线程运行时,获取每个线程中待缓存数据的数据类型;
确定模块2,用于根据数据类型在预设的多个缓存块中确定与数据类型相对应的至少一个目标缓存块;
确定模块2,还用于根据目标缓存块确定与目标缓存块相对应的加密方式;
存储模块3,用于利用加密方式将待缓存数据存储至目标缓存块。
本实施例对于获取模块1、确定模块2和存储模块3的具体形状结构不做限定,本领域技术人员可以根据其实现的功能作用对其进行任意设置,在此不再赘述;另外,本实施例中获取模块1、确定模块2和存储模块3所实现的操作步骤的具体实现过程以及实现效果与上述实施例中步骤S101-S104的具体实现过程以及实现效果相同,具体可参考上述陈述内容,在此不再赘述。
本实施例提供的数据缓存装置,在存在多个线程运行时,确定模块2根据数据类型在预设的多个缓存块中确定与数据类型相对应的至少一个目标缓存块,存储模块3利用加密方式将待缓存数据存储至目标缓存块,从而实现了当存在多个线程的待缓存数据时,可以分别存储至相对应的目标缓存块中,有效地缩短了每个线程的无效等待时间,从而保证了每个线程的运行速率,提高了用户的良好体验性,有利于市场的推广与应用。
为了进一步提高该装置的实用性,本实施例中的确定模块2和获取模块1还用于执行以下步骤,具体的:
确定模块2,还用于在利用加密方式将待缓存数据存储至目标缓存块之后,根据目标缓存块确定与目标缓存块相对应的清理方式;
获取模块1,还用于获取待缓存数据的失效时间;
具体的,在获取模块1获取待缓存数据的失效时间时,该获取模块1可以具体用于执行:获取待缓存数据存储至目标缓存块的存储时间以及预先设置的待缓存数据的有效时间;根据存储时间和有效时间确定失效时间。
此时,该装置还包括:
清理模块4,用于根据失效时间、且利用清理方式对待缓存数据进行清理。
为了进一步提高该装置的实用性,本实施例中的获取模块1还可以用于:获取预先设置的用于访问目标缓存块的更新访问接口;
此时,该装置还包括:
更新模块5,用于利用更新访问接口对目标缓存块内的待缓存数据的失效时间进行更新。
为了进一步提高该装置使用的安全可靠性,本实施例中的获取模块1还可以用于:获取预先设置的用于管理目标缓存块的管理接口;其中,管理接口包括以下至少之一:用于读取并配置目标缓存块中缓存信息的配置管理接口、用于扩展目标缓存块中缓存信息的扩展管理接口、以及用于与用户通信连接的业务管理接口。
装置还包括:
管理模块6,用于利用管理接口对目标缓存块进行管理。
本实施例提供的数据缓存装置能够用于执行图2-图6实施例所对应的方法,其具体执行方式和有益效果类似,在这里不再赘述。
本实施例的另一方面提供了一种数据缓存终端,包括:
存储器;
处理器;以及
计算机程序;
其中,计算机程序存储在存储器中,并被配置为由处理器执行以实现如上述的一种数据缓存方法。
具体的,图8为本发明实施例提供的一种数据缓存终端的结构示意图。
如图8所示,数据缓存终端800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)接口812,传感器组件814,以及通信组件816。
处理组件802通常控制数据缓存终端800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在数据缓存终端800的操作。这些数据的示例包括用于在数据缓存终端800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为数据缓存终端800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为数据缓存终端800生成、管理和分配电力相关联的组件。
多媒体组件808包括在数据缓存终端800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当数据缓存终端800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为数据缓存终端800提供各个方面的状态评估。例如,传感器组件814可以检测到数据缓存终端800的打开/关闭状态,组件的相对定位,例如组件为数据缓存终端800的显示器和小键盘,传感器组件814还可以检测数据缓存终端800或数据缓存终端800一个组件的位置改变,用户与数据缓存终端800接触的存在或不存在,数据缓存终端800方位或加速/减速和数据缓存终端800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括摄像头组件,摄像头可采用如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于数据缓存终端800和其他设备之间有线或无线方式的通信。数据缓存终端800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,数据缓存终端800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
本发明实施例另一方面提供了一种计算机可读存储介质,其上存储有计算机程序;计算机程序被处理器执行以实现上述的一种数据缓存方法。
最后需要说明的是,本领域普通技术人员可以理解上述实施例方法中的全部或者部分流程,是可以通过计算机程序来指令相关的硬件完成,所述的程序可存储于一计算机可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可以为磁盘、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。
本发明实施例中的各个功能单元可以集成在一个处理模块中,也可以是各个单元单独的物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现,并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。上述提到的存储介质可以是只读存储器、磁盘或光盘等。
以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (14)
1.一种数据缓存方法,其特征在于,包括:
在多个线程运行时,获取每个线程中待缓存数据的数据类型;
根据所述数据类型在预设的多个缓存块中确定与所述数据类型相对应的至少一个目标缓存块;
根据所述目标缓存块确定与所述目标缓存块相对应的加密方式;
利用所述加密方式将所述待缓存数据存储至所述目标缓存块。
2.根据权利要求1所述的方法,其特征在于,在利用所述加密方式将所述待缓存数据存储至所述目标缓存块之后,所述方法还包括:
根据所述目标缓存块确定与所述目标缓存块相对应的清理方式;
获取所述待缓存数据的失效时间;
根据所述失效时间、且利用所述清理方式对所述待缓存数据进行清理。
3.根据权利要求2所述的方法,其特征在于,获取所述待缓存数据的失效时间,包括:
获取所述待缓存数据存储至所述目标缓存块的存储时间以及预先设置的所述待缓存数据的有效时间;
根据所述存储时间和有效时间确定所述失效时间。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取预先设置的用于访问所述目标缓存块的更新访问接口;
利用所述更新访问接口对所述目标缓存块内的待缓存数据的失效时间进行更新。
5.根据权利要求1-4中任意一项所述的方法,其特征在于,所述方法还包括:
获取预先设置的用于管理所述目标缓存块的管理接口;
利用所述管理接口对所述目标缓存块进行管理。
6.根据权利要求5所述的方法,其特征在于,
所述管理接口包括以下至少之一:
用于读取并配置所述目标缓存块中缓存信息的配置管理接口、用于扩展所述目标缓存块中缓存信息的扩展管理接口、以及用于与用户通信连接的业务管理接口。
7.一种数据缓存装置,其特征在于,包括:
获取模块,用于在多个线程运行时,获取每个线程中待缓存数据的数据类型;
确定模块,用于根据所述数据类型在预设的多个缓存块中确定与所述数据类型相对应的至少一个目标缓存块;
所述确定模块,还用于根据所述目标缓存块确定与所述目标缓存块相对应的加密方式;
存储模块,用于利用所述加密方式将所述待缓存数据存储至所述目标缓存块。
8.根据权利要求7所述的装置,其特征在于,
所述确定模块,还用于在利用所述加密方式将所述待缓存数据存储至所述目标缓存块之后,根据所述目标缓存块确定与所述目标缓存块相对应的清理方式;
所述获取模块,还用于获取所述待缓存数据的失效时间;
所述装置还包括:
清理模块,用于根据所述失效时间、且利用所述清理方式对所述待缓存数据进行清理。
9.根据权利要求8所述的装置,其特征在于,所述获取模块,用于:
获取所述待缓存数据存储至所述目标缓存块的存储时间以及预先设置的所述待缓存数据的有效时间;
根据所述存储时间和有效时间确定所述失效时间。
10.根据权利要求8所述的装置,其特征在于,
所述获取模块,还用于获取预先设置的用于访问所述目标缓存块的更新访问接口;
所述装置还包括:
更新模块,用于利用所述更新访问接口对所述目标缓存块内的待缓存数据的失效时间进行更新。
11.根据权利要求7-10中任意一项所述的装置,其特征在于,
所述获取模块,还用于获取预先设置的用于管理所述目标缓存块的管理接口;
所述装置还包括:
管理模块,用于利用所述管理接口对所述目标缓存块进行管理。
12.根据权利要求11所述的装置,其特征在于,
所述管理接口包括以下至少之一:
用于读取并配置所述目标缓存块中缓存信息的配置管理接口、用于扩展所述目标缓存块中缓存信息的扩展管理接口、以及用于与用户通信连接的业务管理接口。
13.一种数据缓存终端,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-6中任意一项所述的一种数据缓存方法。
14.一种计算机可读存储介质,其特征在于,其上存储有计算机程序;
所述计算机程序被处理器执行以实现如权利要求1-6中任意一项所述的一种数据缓存方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810681133.8A CN110647477B (zh) | 2018-06-27 | 2018-06-27 | 数据缓存方法、装置、终端以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810681133.8A CN110647477B (zh) | 2018-06-27 | 2018-06-27 | 数据缓存方法、装置、终端以及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110647477A true CN110647477A (zh) | 2020-01-03 |
CN110647477B CN110647477B (zh) | 2022-02-11 |
Family
ID=68988666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810681133.8A Active CN110647477B (zh) | 2018-06-27 | 2018-06-27 | 数据缓存方法、装置、终端以及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110647477B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111667820A (zh) * | 2020-06-22 | 2020-09-15 | 京东方科技集团股份有限公司 | 通信方法、装置、电子设备和计算机可读存储介质 |
CN111897819A (zh) * | 2020-07-31 | 2020-11-06 | 平安普惠企业管理有限公司 | 数据存储方法、装置、电子设备及存储介质 |
CN113672947A (zh) * | 2021-07-16 | 2021-11-19 | 国网浙江省电力有限公司杭州供电公司 | 一种基于主题模型的电力系统图模交换数据加密方法 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101316145A (zh) * | 2008-07-25 | 2008-12-03 | 中兴通讯股份有限公司 | 一种多路信息并行发送及回收的实现方法和装置 |
CN101909055A (zh) * | 2010-07-19 | 2010-12-08 | 东南大学 | 一种基于QoS的多线程Web服务协商方法 |
CN102081619A (zh) * | 2009-11-26 | 2011-06-01 | 中国移动通信集团公司 | 数据更新方法、分发节点及海量存储集群系统 |
CN102314368A (zh) * | 2011-09-26 | 2012-01-11 | 贵阳朗玛信息技术股份有限公司 | 更新服务器程序的配置数据的方法及设备 |
CN102394809A (zh) * | 2011-10-13 | 2012-03-28 | 中国人民解放军国防科学技术大学 | 一种多线程边界网关协议并行处理方法 |
US20130097391A1 (en) * | 2001-10-19 | 2013-04-18 | Wisconsin Alumni Research Foundation | Concurrent Execution of Critical Sections by Eliding Ownership of Locks |
US20150052306A1 (en) * | 2013-08-19 | 2015-02-19 | Fujitsu Limited | Processor and control method of processor |
CN104834558A (zh) * | 2015-05-19 | 2015-08-12 | 北京京东尚科信息技术有限公司 | 一种数据处理的方法及系统 |
CN104899057A (zh) * | 2015-05-13 | 2015-09-09 | 北京金山安全软件有限公司 | 软件模块的更新方法和装置 |
CN102486753B (zh) * | 2009-11-30 | 2015-09-16 | 国际商业机器公司 | 构建及允许访问高速缓存的方法、设备及存储系统 |
CN105094840A (zh) * | 2015-08-14 | 2015-11-25 | 浪潮(北京)电子信息产业有限公司 | 一种基于缓存一致性原理的原子操作实现方法及装置 |
CN105912479A (zh) * | 2016-04-07 | 2016-08-31 | 武汉数字派特科技有限公司 | 一种并发数据的缓存方法及结构 |
CN106796514A (zh) * | 2014-05-21 | 2017-05-31 | 社会创新Ipco有限公司 | 用于完全可配置的实时处理的系统和方法 |
CN107995061A (zh) * | 2017-11-30 | 2018-05-04 | 北京卓讯科信技术有限公司 | 多规格10Gbps网络信号长时采集与回放系统和方法 |
-
2018
- 2018-06-27 CN CN201810681133.8A patent/CN110647477B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097391A1 (en) * | 2001-10-19 | 2013-04-18 | Wisconsin Alumni Research Foundation | Concurrent Execution of Critical Sections by Eliding Ownership of Locks |
CN101316145A (zh) * | 2008-07-25 | 2008-12-03 | 中兴通讯股份有限公司 | 一种多路信息并行发送及回收的实现方法和装置 |
CN102081619A (zh) * | 2009-11-26 | 2011-06-01 | 中国移动通信集团公司 | 数据更新方法、分发节点及海量存储集群系统 |
CN102486753B (zh) * | 2009-11-30 | 2015-09-16 | 国际商业机器公司 | 构建及允许访问高速缓存的方法、设备及存储系统 |
CN101909055A (zh) * | 2010-07-19 | 2010-12-08 | 东南大学 | 一种基于QoS的多线程Web服务协商方法 |
CN102314368A (zh) * | 2011-09-26 | 2012-01-11 | 贵阳朗玛信息技术股份有限公司 | 更新服务器程序的配置数据的方法及设备 |
CN102394809A (zh) * | 2011-10-13 | 2012-03-28 | 中国人民解放军国防科学技术大学 | 一种多线程边界网关协议并行处理方法 |
US20150052306A1 (en) * | 2013-08-19 | 2015-02-19 | Fujitsu Limited | Processor and control method of processor |
CN106796514A (zh) * | 2014-05-21 | 2017-05-31 | 社会创新Ipco有限公司 | 用于完全可配置的实时处理的系统和方法 |
CN104899057A (zh) * | 2015-05-13 | 2015-09-09 | 北京金山安全软件有限公司 | 软件模块的更新方法和装置 |
CN104834558A (zh) * | 2015-05-19 | 2015-08-12 | 北京京东尚科信息技术有限公司 | 一种数据处理的方法及系统 |
CN105094840A (zh) * | 2015-08-14 | 2015-11-25 | 浪潮(北京)电子信息产业有限公司 | 一种基于缓存一致性原理的原子操作实现方法及装置 |
CN105912479A (zh) * | 2016-04-07 | 2016-08-31 | 武汉数字派特科技有限公司 | 一种并发数据的缓存方法及结构 |
CN107995061A (zh) * | 2017-11-30 | 2018-05-04 | 北京卓讯科信技术有限公司 | 多规格10Gbps网络信号长时采集与回放系统和方法 |
Non-Patent Citations (1)
Title |
---|
卫婉颖: "基于JSCore框架的iOS热修复系统的设计与实现", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111667820A (zh) * | 2020-06-22 | 2020-09-15 | 京东方科技集团股份有限公司 | 通信方法、装置、电子设备和计算机可读存储介质 |
CN111897819A (zh) * | 2020-07-31 | 2020-11-06 | 平安普惠企业管理有限公司 | 数据存储方法、装置、电子设备及存储介质 |
CN113672947A (zh) * | 2021-07-16 | 2021-11-19 | 国网浙江省电力有限公司杭州供电公司 | 一种基于主题模型的电力系统图模交换数据加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110647477B (zh) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3937426A1 (en) | Master-slave server switching method and apparatus, electronic device and storage medium | |
CN110751275B (zh) | 图训练系统、数据访问方法及装置、电子设备、存储介质 | |
JP6348989B2 (ja) | ファームウェアの復元方法、装置、端末、プログラム及び記録媒体 | |
CN110647477B (zh) | 数据缓存方法、装置、终端以及计算机可读存储介质 | |
US20150333971A1 (en) | Method and device for managing processes of application program | |
US20160026534A1 (en) | Method and device for saving storage space | |
CN107291626B (zh) | 数据存储方法和装置 | |
KR101648501B1 (ko) | 라이트앱 오프라인 업데이트방법, 장치, 단말기, 프로그램 및 기록매체 | |
WO2017028425A1 (zh) | 节能模式启动方法和装置 | |
WO2016000357A1 (zh) | 网页访问方法、装置、服务器及终端 | |
CN109254849B (zh) | 应用程序的运行方法及装置 | |
CN105657805B (zh) | 一种智能设备接入无线网络的方法及装置 | |
CN109388625B (zh) | 多分布式文件系统中处理配置文件的方法及装置 | |
CN107741869A (zh) | 应用程序的启动方法、装置、及终端设备 | |
CN107861886A (zh) | 缓存数据的处理方法、装置及终端 | |
US20220286740A1 (en) | Method and apparatus for video playing | |
CN104615546A (zh) | 文件数据管理方法及装置 | |
CN111241134B (zh) | 一种数据处理方法及装置 | |
CN107436782B (zh) | 应用程序静默安装方法及装置 | |
CN111966410A (zh) | 启动处理方法、装置、电子设备及存储介质 | |
CN107733674B (zh) | 组件升级方法及终端 | |
CN114510342A (zh) | 缓存处理方法、装置及存储介质 | |
CN108509641B (zh) | 文件备份的方法、装置、服务器以及系统 | |
CN113778669A (zh) | 系统资源分配方法、系统资源分配装置及存储介质 | |
CN105554141A (zh) | 智能设备资源管控方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200422 Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Applicant after: Alibaba (China) Co.,Ltd. Address before: 510000 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 12 layer self unit 01 Applicant before: GUANGZHOU SHENMA MOBILE INFORMATION TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |