CN111367672A - 数据缓存方法、装置、电子设备及计算机存储介质 - Google Patents

数据缓存方法、装置、电子设备及计算机存储介质 Download PDF

Info

Publication number
CN111367672A
CN111367672A CN202010146643.2A CN202010146643A CN111367672A CN 111367672 A CN111367672 A CN 111367672A CN 202010146643 A CN202010146643 A CN 202010146643A CN 111367672 A CN111367672 A CN 111367672A
Authority
CN
China
Prior art keywords
remote cache
data
cluster
clusters
remote
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.)
Pending
Application number
CN202010146643.2A
Other languages
English (en)
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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and 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 Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202010146643.2A priority Critical patent/CN111367672A/zh
Publication of CN111367672A publication Critical patent/CN111367672A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种数据缓存方法、装置、电子设备及计算机存储介质,其中方法包括:针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,当前状态信息包括:远程缓存集群的当前负载信息;在各远程缓存集群的当前状态信息满足预设的数量调整条件的情况下,调整与管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。本发明实施例能够根据待缓存数据的数据量选择远程缓存集群的个数,从而节省远程缓存集群的内存资源。

Description

数据缓存方法、装置、电子设备及计算机存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种数据缓存方法、装置、电子设备及计算机存储介质。
背景技术
管理系统中包含:管理服务器、本地缓存集群以及多个用户终端,在用户对用户终端进行访问的过程中,通常产生访问数据,例如,对于一个投票任务,当用户在投票界面中选择相应的选项后,则产生的访问数据即为该投票结果,管理服务器通常需要将访问数据缓存至远程缓存集群中,访问数据的数据量有高峰期和低峰期,高峰期的数据量可能超出低峰期的数据量几倍。
现有技术中,管理系统中通常设置有固定数量个远程缓存集群,而且在各远程缓存集群中设置有QPS(Queries Per Second,每秒查询率)的上限阈值,当远程缓存集群的数量较少时,管理系统为各远程缓存集群分配的访问数据的数据量较大,可能出现远程缓存集群的QPS达到QPS上限阈值的情况,进而导致缓存高峰期的访问数据时间较长,即导致缓存超时。因此,在管理系统中,通常根据高峰期访问数据的数据量,以及各远程缓存集群的QPS上限阈值计算远程缓存集群的个数。
发明人在实现本发明的过程中发现,现有技术至少存在如下问题:
由于现有技术中,通常在管理系统中设置固定数量个远程缓存集群,即现有技术提出的数据缓存方法,无法动态调整远程缓存集群的个数,而管理系统高峰期的数据量可能超出低峰期的数据量几倍,在管理系统使用低峰期,仍然将访问数据缓存至固定数量个远程缓存集群中,将导致各远程缓存集群没有达到最大的处理能力,即,各远程缓存集群还有能力缓存访问数据,因此,导致远程缓存集群的内存资源的浪费。
发明内容
本发明实施例的目的在于提供一种数据缓存方法、装置、电子设备及计算机存储介质,以实现能够根据待缓存数据的数据量选择远程缓存集群的个数。
具体技术方案如下:
第一方面,本发明实施例提供了一种数据缓存方法,所述方法包括:
针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,所述当前状态信息包括:远程缓存集群的当前负载信息;
在各远程缓存集群的所述当前状态信息满足预设的数量调整条件的情况下,调整与所述管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。
第二方面,本发明实施例提供了一种数据缓存装置,所述装置包括:
第一获取模块,用于针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,所述当前状态信息包括:远程缓存集群的当前负载信息;
调整模块,用于在各远程缓存集群的所述当前状态信息满足预设的数量调整条件的情况下,调整与所述管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一数据缓存方法的方法步骤。
第四方面,本发明实施还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一数据缓存方法的步骤。
第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一数据缓存方法。
本发明实施例有益效果:
本发明实施例提供的一种数据缓存方法、装置、电子设备及计算机存储介质,可以针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,在各远程缓存集群的当前状态信息,满足预设的数量调整条件的情况下,调整与管理服务器建立连接的远程缓存集群的数量。因此,本发明实施例能够根据各远程缓存集群的当前状态信息,对与管理服务器建立连接的远程缓存集群的数量进行调整,以实现远程缓存集群数量的动态调整,从而通过动态调整远程缓存集群的数量,使远程缓存集群的内存资源量与访问数据量相匹配,从而在一定程度上避免了内存资源的浪费。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据缓存方法的第一种流程示意图;
图2为本发明实施例提供的数据缓存方法的第二种流程示意图;
图3为本发明实施例提供的数据缓存方法中,S220的一种流程示意图;
图4为本发明实施例提供的数据缓存方法中,S120的一种流程示意图;
图5为本发明实施例提供的数据缓存方法的第三种流程示意图;
图6为本发明实施例提供的数据缓存方法的第四种流程示意图;
图7为本发明实施例提供的数据缓存方法中,S130的一种流程示意图;
图8为本发明实施例提供的数据缓存方法中,S132的一种流程示意图;
图9为本发明实施例提供的数据缓存方法的第五种流程示意图;
图10为本发明实施例提供的数据缓存方法中,S190的一种流程示意图;
图11为本发明实施例提供的数据缓存方法的第六种流程示意图;
图12为本发明实施例提供的数据缓存装置的第一种结构示意图;
图13为本发明实施例提供的数据缓存装置的第二种结构示意图;
图14为本发明实施例提供的数据缓存装置中,调整模块的一种结构示意图;
图15为本发明实施例提供的数据缓存装置的第三种结构示意图;
图16为本发明实施例提供的数据缓存装置的第四种结构示意图;
图17为本发明实施例提供的数据缓存装置中,处理模块的一种结构示意图;
图18为本发明实施例提供的数据缓存装置中,获取子模块的一种结构示意图;
图19为本发明实施例提供的数据缓存装置的第五种结构示意图;
图20为本发明实施例提供的数据缓存装置中,缓存模块的一种结构示意图;
图21为本发明实施例提供的数据缓存装置的第六种结构示意图;
图22为本发明实施例提供的电子设备的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,管理系统中通常设置有固定数量个远程缓存集群,而且在各远程缓存集群中设置有QPS(Queries Per Second,每秒查询率)的上限阈值,当远程缓存集群的数量较少时,管理系统为各远程缓存集群分配的访问数据的数据量较大,可能出现远程缓存集群的QPS达到QPS上限阈值的情况,进而导致缓存高峰期的访问数据时间较长,即导致缓存超时。因此,在管理系统中,通常根据高峰期访问数据的数据量,以及各远程缓存集群的QPS上限阈值计算远程缓存集群的个数。
发明人在实现本发明的过程中发现,现有技术至少存在如下问题:
由于现有技术中,通常在管理系统中设置固定数量个远程缓存集群,即现有技术提出的数据缓存方法,无法动态调整远程缓存集群的个数,而管理系统高峰期的数据量可能超出低峰期的数据量几倍,在管理系统使用低峰期,仍然将访问数据缓存至固定数量个远程缓存集群中,将导致各远程缓存集群没有达到最大的处理能力,即,各远程缓存集群还有能力缓存访问数据,因此,导致远程缓存集群的内存资源的浪费。
有鉴于此,本发明实施例提供一种数据缓存方法,应用于管理系统中的管理服务器,管理系统中还可以包括:本地缓存集群、多个远程缓存集群以及多个用户终端,当需要缓存用户访问用户终端所产生的访问数据时,首先用户终端将访问数据发送至管理服务器,由管理服务器将这些访问数据发送至远程缓存集群进行缓存。
在本发明实施例中,管理服务器可以针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,在各远程缓存集群的当前状态信息,满足预设的数量调整条件的情况下,调整与管理服务器建立连接的远程缓存集群的数量;获取待缓存数据并将待缓存数据缓存至经数量调整后的远程缓存集群中。因此,本发明实施例能够根据各远程缓存集群的当前状态信息,对与管理服务器建立连接的远程缓存集群的数量进行调整,以实现远程缓存集群数量的动态调整,从而通过动态调整远程缓存集群的数量,使远程缓存集群的内存资源量与访问数据量相匹配,从而在一定程度上避免了内存资源的浪费。
如图1所示,本发明实施例提供了一种数据缓存方法,该过程可以包括:
S110,针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,当前状态信息包括:远程缓存集群的当前负载信息。
S120,在各远程缓存集群的当前状态信息满足预设的数量调整条件的情况下,调整与管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。
图1所示实施例流程步骤S110中,与管理服务器已建立连接的多个远程缓存集群,可以指多个远程缓存集群已经开始缓存自管理服务器发送的当前访问数据。一个远程缓存集群中可以包括多个远程缓存服务器,这些远程缓存服务器可以用于对同一个任务的数据进行缓存,例如,当用户的访问数据为针对某一投票事件的投票数据时,则远程缓存集群中的多个远程缓存服务器均可以用于缓存该投票数据。当然,当有多个任务的数据需要进行缓存时,也可以将不同任务的数据缓存至不同的远程缓存服务器中。
可以获取与管理服务器已建立连接的多个远程缓存集群中,各远程缓存集群的当前状态信息,该当前状态信息可以包括:远程缓存集群的当前负载信息。
图1所示实施例流程步骤S120中,由于当前负载信息可以用于表征远程缓存服务器的当前工作量,当当前负载信息表示的数值较小时,则表明远程缓存集群的当前工作量较小,当当前负载信息表示的数值较大时,则表明远程缓存集群的当前工作量较大。因此,可以判断各远程缓存集群的当前状态信息是否满足预设的数量调整条件,在满足预设的数量调整条件的情况下,则将与管理服务器建立连接的远程缓存集群的数量进行调整,可以得到经数量调整后的远程缓存集群。
调整与管理服务器建立连接的远程缓存集群的数量的具体实现方法可以包括但不限于:可以预先设置一个与管理服务器建立连接的远程缓存集群的数量初始值,当需要调整该数量初始值时,将该数量初始值与预设数量进行加法或者减法运算,得到调整以后的数量,例如,数量初始值为3,预设数量为1,那调整之后的数量即为2或者4;也可以预先设置多个数值,当需要调整与管理服务器建立连接的远程缓存集群的数量时,则可以将该数量调整至预设的多个数值中,与该数量之间的差值最小的数值,例如,预先设置的多个数值分别为2,4和6,则如果当前的数量为4,那么调整后的数量即为2或者6。
例如,对于投票事件,通常可能维持一个月,或者几个月,因此可以根据各远程缓存集群缓存当前投票数据时的当前状态信息,判断是否满足预设的数量调整条件,而且在满足预设的数量调整条件的情况下,则可以将与管理服务器建立连接的远程缓存集群的数量进行调整,从而得到经数量调整后的远程缓存集群。
作为本发明实施例一种可选的实施方式,如图2所示,在图1所示实施例流程步骤S110之前,本发明实施例提供的数据缓存方法还可以包括:
S210,获取预设的缓存配置信息中的连接数量以及多个远程缓存集群的标识号。
可以在管理服务器中预先设置缓存配置文件,该缓存配置文件中可以包括缓存配置信息,缓存配置信息中可以包括以下两种信息:
第一种、需要与管理服务器建立连接的远程缓存集群的连接数量。当管理服务器在获取多个远程缓存集群的标识号之后,便可以利用多个远程缓存集群的标识号,与多个远程缓存集群分别建立连接,因此,该连接数量也可以表示与管理服务器建立连接的多个远程缓存集群的数量。
第二种、远程缓存集群的标识号,可以包括远程缓存集群的IP(InternetProtocol,网际互连协议)地址,当然也可以包括其他的信息,例如,该远程缓存集群的标识号,还可以包括用户账号。
此外,通常在管理系统中,缓存待缓存数据之前,可以预先对与管理服务器建立连接的远程缓存集群的连接数量初始值进行设置,该连接数量初始值可以根据在访问高峰期产生的数据量大小进行设置,例如,在一个维持3个月的投票事件中,可能第二个月是投票高峰期,这个时期产生的数据量最大,因此,可以将该时间段内需要的远程缓存集群的数量作为连接数量初始值。
在图1实施例流程步骤S120之后,如图2所示,本发明实施例提供的数据缓存方法还可以包括:
S220,对缓存配置信息中的连接数量以及各远程缓存集群对应的标识号进行更新,得到更新后的缓存配置信息。
在得到经数量调整后的远程缓存集群之后,可以对缓存配置信息中的连接数量以及各远程缓存集群对应的标识号进行更新,即将连接数量更新为新的连接数量,如果增大了连接数量,则还需要将新增的远程缓存集群的标识号添加至缓存配置信息中;如果减小了连接数量,则还需要将去掉的远程缓存集群的标识号从缓存配置信息中删除,最终得到更新后的缓存配置信息,该更新后的缓存配置信息中包括:经数量调整后的各远程缓存集群对应的标识号,以及新的连接数量。
在本发明实施例中,通过在管理服务器中预先设置缓存配置文件,并在缓存配置文件中设置缓存配置信息,在连接数量调整之后,可以及时对缓存配置信息进行更新,因此开发人员可以从管理服务器中获取到该缓存配置信息,并知晓当前时刻与管理服务器建立连接的远程缓存集群的数量以及各远程缓存集群的标识号。
作为本发明实施例一种可选的实施方式,如图3所示,图2所示实施例流程步骤S220可以包括:
S221,将缓存配置信息中的连接数量更新为新的连接数量。
在对与管理服务器建立连接的远程缓存集群的数量进行调整之后,可以得到新的连接数量,该新的连接数量可以指,与管理服务器建立连接的新的数量。在得到新的连接数量之后,即可将缓存配置信息中的连接数量更新为新的连接数量。
S222,从预先存储的多个远程缓存集群的标识号中,选取第一预设数量个远程缓存集群,并将所选取的远程缓存集群的标识号添加至缓存配置信息中。
如果增加了连接数量,可以先确定第一预设数量,该第一预设数量用来表示需要增加的远程缓存集群的数量。此处,第一预设数量可以为根据经验预先设置好的数值,或者也可以通过计算新的连接数量与连接数量之间的差值确定。
可以预先将备用的远程缓存集群的标识号存储在管理服务器中,在确定了第一预设数量之后,则可以从备用远程缓存集群中选取第一预设数量个远程缓存集群,并将第一预设数量个远程缓存集群的标识号添加至缓存配置信息中,接着将这些远程缓存集群与管理服务器建立连接。需要说明的是,可以采用随机选择的方法,选取第一预设数量个远程缓存集群。
或者,S221,将缓存配置信息中的连接数量更新为新的连接数量。
该步骤已在前文进行了详细的描述,此处不再赘述。
S223,从与管理服务器已建立连接的多个远程缓存集群中,选取第二预设数量个远程缓存集群,并将所选取的远程缓存集群的标识号从缓存配置信息中删除。
如果减少了连接数量,可以先确定第二预设数量,该第二预设数量用来表示需要减少的远程缓存集群的数量。此处,第二预设数量可以为根据经验预先设置好的数值,或者也可以通过计算新的连接数量与连接数量之间的差值确定。接着可以从已经与管理服务器建立连接的多个远程缓存集群中,选取第二预设数量个远程缓存集群,并将第二预设数量个远程缓存集群的标识号从缓存配置信息中删除。最后还可以将这些远程缓存集群,与管理服务器断开连接。需要说明的是,可以采用随机选择的方法,选取第二预设数量个远程缓存集群。
此外,当需要增加管理系统的内存大小时,可以通过增加缓存配置信息中的连接数量实现,同样的,当需要减少管理系统的内存大小时,也可以通过减少缓存配置信息中的连接数量实现。
作为本发明实施例一种可选的实施方式,当前负载信息中可以包括:远程缓存集群的中央处理单元使用率,可以理解的是,当中央处理单元使用率过高时,表明中央处理单元内存资源不足,容易出现远程缓存集群卡机或者无响应,进而导致无法对待缓存数据进行缓存;而当中央处理单元使用率过低时,则表明中央处理单元的内存资源未能得到充分利用,进而造成远程缓存集群内存资源的浪费,因此可以获取当前负载信息中的中央处理单元使用率,并根据该中央处理单元使用率,判断是否需要对与管理服务器建立连接的远程缓存集群的数量进行调整。
如图4所示,图1所示实施例流程步骤S120可以包括:
S121,判断各远程缓存集群的中央处理单元使用率,是否大于或等于第一预设负载阈值。
在本发明实施例中,第一预设负载阈值可以为预先设置好的阈值,该第一预设负载阈值可以用于标识远程缓存集群是否能够继续缓存待缓存数据,例如,可以将该第一预设阈值设置为80%,或者75%等数值。
S122,如果中央处理单元使用率大于或等于第一预设负载阈值,则增大与管理服务器建立连接的远程缓存集群的数量。
如果中央处理单元使用率大于或等于第一预设负载阈值,例如,如果中央处理单元使用率大于或等于80%,则表明中央处理单元使用率过高,中央处理单元内存资源不足,如果中央处理单元使用率仍然维持该较高的数值时,则可能出现中央处理单元温度过高,进而出现远程缓存集群中的远程缓存服务器卡机或者无响应的情况,因此,可以将与管理服务器建立连接的远程缓存集群的数量增大,例如,可以将该数量加一。接着在获取到待缓存数据之后,将待缓存数据分别缓存至增大数量后的远程缓存集群中,这样一来,使得各远程缓存集群中所分配的待缓存数据的数据量较小,进而能够降低各远程缓存集群的中央处理单元使用率。
S123,如果中央处理单元使用率小于第一预设负载阈值,则维持与管理服务器建立连接的远程缓存集群的数量不变。
或者,如图2所示,图1所示实施例流程步骤S120可以包括:
S124,判断各远程缓存集群的中央处理单元使用率,是否小于或等于第二预设负载阈值。
在本发明实施例中,第二预设负载阈值可以为预先设置好的阈值,该第二预设负载阈值可以用于标识远程缓存集群是否能够继续缓存待缓存数据,且第二预设负载阈值小于第一预设负载阈值,例如,可以将第二预设负载阈值设置为50%,或者55%。
S125,如果中央处理单元使用率小于或等于第二预设负载阈值,则减小与管理服务器建立连接的远程缓存集群的数量。
如果中央处理单元使用率小于或等于第二预设负载阈值,例如,如果中央处理单元使用率小于或等于50%,则表明中央处理单元使用率过低,中央处理单元的内存资源未能得到充分利用,因此,可以减小与管理服务器建立连接的远程缓存集群的数量,例如,先将该数量减一,得到将数量减小后的远程缓存集群。接着在获取到待缓存数据后,可以将待缓存数据分别缓存至经数量减少后的远程缓存集群中,因此,各远程缓存集群需要缓存的待缓存数据的数据量将增大,即各远程缓存集群的中央处理单元使用率将增大,进而能够使得各远程缓存集群的内存资源得到充分利用。
S126,如果中央处理单元使用率大于第二预设负载阈值,则维持与管理服务器建立连接的远程缓存集群的数量不变。
作为本发明实施例一种可选的实施方式,如图5所示,本发明实施例提供的数据缓存方法还可以包括:
S140,在各远程缓存集群的中央处理单元使用率,大于第二预设负载阈值,且小于第一预设负载阈值的情况下,维持与管理服务器建立连接的远程缓存集群的数量不变。
可以先判断各远程缓存集群的中央处理单元利用率是否大于或等于第一预设负载阈值,当中央处理单元利用率小于第一预设负载阈值时,可以继续判断中央处理单元利用率是否小于或等于第二预设负载阈值。当然,也可以先将中央处理单元使用率与第二预设负载阈值比较,再与第一预设负载阈值进行比较。如果中央处理单元使用率,大于第二预设负载阈值,且小于第一预设负载阈值时,例如,当中央处理单元使用率为70%时,大于第二预设负载阈值(50%,或者55%),且小于第一预设负载阈值(75%,或者80%),则维持与管理服务器建立连接的远程缓存集群的数量不变。这样一来,可以尽量保证各远程缓存集群的中央处理单元使用率维持不变。
作为本发明实施例一种可选的实施方式,针对各远程缓存集群,可以采用动态伸缩服务器数量的方式,对远程缓存集群中的各远程缓存服务器分配待缓存数据,具体分配方法,可以参照图3所示实施例流程步骤S121和S122,或者S123和S124,本发明实施例对此不再赘述。
作为本发明实施例一种可选的实施方式,在图1所示实施例流程步骤S120之后,如图6所示,本发明实施例提供的数据缓存方法还可以包括:
S130,获取待缓存数据,并将待缓存数据缓存至经数量调整后的远程缓存集群。
待缓存数据可以为需要缓存至远程缓存集群中的数据,例如,该待缓存数据可以为多个不同的用户,通过不同的用户终端进行投票所产生的多个投票数据。
在获取到待缓存数据后,可以将待缓存数据缓存至经数量调整后的远程缓存集群,这样一来,当增加了远程缓存集群的数量时,各远程缓存集群所缓存的数据量,相比调整连接数量之前所缓存的数据量较少,因此可以减少各远程缓存集群的当前负载信息;当减少了远程缓存集群的数量时,各远程缓存集群所缓存的数据量,相比调整连接数量之前所缓存的数据量较大,因此,能够增加各远程缓存集群的当前负载信息,使得各远程缓存集群的内存资源得到充分的利用。作为本发明实施例一种可选的实施方式,如图7所示,图6所示实施例流程步骤S130,可以包括:
S131,利用更新后的缓存配置信息中包含的,新的连接数量以及各远程缓存集群对应的标识号,生成多个键值对。
在生成的多个键值对中,键值对的数量可以与新的连接数量相同,其中键值对中的键可以表示第一关键字信息,键值对中的值可以表示远程缓存集群对应的标识号,键值对表示第一关键字信息与远程缓存集群的标识号之间的对应关系,例如,当新的连接数量为9时,则键值对的数量为9,即生成9个键值对,第一关键字信息的数值范围可以为0~8之间的整数,其中每个第一关键字信息均对应一个远程缓存集群的标识号。
S132,获取用户终端对应的哈希值。
由于在缓存投票数据时,不同的用户可能在不同的用户终端登录进行投票,因此可以获取用户终端的哈希值,并利用该哈希值将不同的用户终端的待缓存数据缓存至不同的远程缓存集群中。
S133,在多个键值对中匹配与哈希值相同的第一关键字信息。
在获取到用户终端对应的哈希值之后,可以在多个键值对中匹配与哈希值相同的第一关键字信息,例如,当用户终端对应的哈希值为0时,则可以在多个键值对中匹配数值为0的第一关键字信息。
S134,利用匹配得到的第一关键字信息对应的键值对的标识号,得到用户终端的目标远程缓存集群。
在得到与哈希值匹配的第一关键字信息之后,通过查询键值对,可以得到与第一关键字信息对应的标识号,并可以将该标识号对应的远程缓存集群,作为用户终端的目标远程缓存集群。
S135,将用户终端的待缓存数据缓存至目标远程缓存集群。
在得到用户终端的目标缓存集群之后,可以将用户终端的待缓存数据源缓存至该目标远程缓存集群中,这样一来,当不同的用户终端对应的哈希值不同时,则可以将不同用户终端的待缓存数据缓存至不同的远程缓存集群中。
作为本发明实施例可选的一种实施方式,如图8所示,图7所示实施例流程步骤S132,可以包括:
S1321,获取用户终端的终端标识。
可以先获取用户终端的终端标识,该终端标识可以为用户终端的终端标识号,例如,该终端标识号可以为用户终端的IP地址,或者也可以为用户在该用户终端中登录投票网站的用户标识号,该用户标识号可以为:管理系统根据用户登录或者注册的先后顺序分配的标识号,该用户标识号具有唯一性,即,不同用户的用户标识号不同,且可以为数值。
S1322,对终端标识与新的连接数量进行取余运算,得到哈希值。
在获取到用户终端的终端标识之后,可以将终端标识与新的连接数量进行取余运算,即,通过将终端标识除以新的连接数量得到整数商,接着将终端标识减去,整数商与新的连接数量之间的乘积,得到的结果即为余数,即为本发明实施例中的哈希值。例如,当终端标识为20,新的连接数量为9时,可以先将20除以9,得到整数商2,接着计算20-9*2=2,2为余数,即终端标识为20对应的哈希值。利用本发明实施例流程步骤S1321和S1322,使得用户终端对应的哈希值的计算方法较为简单。
作为本发明实施例一种可选的实施方式,如图9所示,本发明实施例提供的数据缓存方法还可以包括:
S150,获取待查询数据的关键字信息,以作为第二关键字信息。
在对数据进行缓存的过程中,由于有时候数据较长,因此为便于对待查询数据进行快速方便的查询,通常待缓存数据是以键值对的方式进行缓存的,例如,通常将键值对缓存至远程缓存集群中,或者将键值对缓存至本地缓存集群中,该键值对中的键可以表示第二关键字信息,键值对中的值可以表示待查询数据。当本地缓存集群或者远程缓存集群中缓存有待查询数据时,则可以利用第二关键字信息,在本地缓存集群或者远程缓存集群中进行查询得到待查询数据。因此,可以先获取第二关键字信息,该第二关键字信息为与待查询数据对应的第二关键字信息。例如,在本发明实施例中,待查询数据可以为投票事件中不同选项的投票数量。
S160,利用第二关键字信息,在本地缓存集群中查询待查询数据。
通常用户终端需要获取待查询数据时,需要将对待查询数据的查询请求发送至管理服务器,且该查询请求中通常包含第二关键字信息,因此,管理服务器在接收到用户终端发送的查询请求之后,可以获取到第二关键字信息,并接着在本地缓存集群中进行查询待查询数据。
S170,在本地缓存集群中查询不到待查询数据的情况下,在远程缓存集群中查询待查询数据,得到待查询数据。
由于本地缓存集群的容量有限,即内存资源有限,因此,通常在本地缓存集群中缓存有较少数量的待查询数据,因此需要查询的待查询数据很可能并未在本地缓存集群中进行缓存,而是缓存在远程缓存集群中。因此,如果在本地缓存集群中查询不到待查询数据时,则可以在远程缓存集群中查询,即,可以在经数量调整后的远程缓存集群中查询待查询数据,可以得到待查询数据。
需要说明的是,在远程缓存集群中查询不到待查询数据的情况下,还可以在预设的数据库中进行查询,该数据库可以为预先设置在远程缓存集群中的数据库。
S180,发送待查询数据至用户终端。
在查询到待查询数据之后,可以将该待查询数据发送至用户终端,便于用户终端接收该待查询数据。
S190,将待查询数据缓存至本地缓存集群中。
为了后续可以在本地缓存集群中查询到待查询数据,在远程缓存集群中查询到待查询数据之后,可以将该待查询数据缓存至本地缓存集群。因此,本发明实施例在获取到针对待查询数据的查询请求之后,可以先在本地缓存集群中查询,在本地缓存集群中查询不到的情况下,在远程缓存集群中进行查询,并在查询到待查询数据的情况下,将待查询数据缓存至本地缓存集群中,当后续用户终端再次对待查询数据进行查询时,则可以直接从本地缓存集群中查询得到。因此,本发明实施例能够降低对远程缓存集群的调用频率,进而能够减少在调用远程缓存集群查询待查询数据时,产生的网络时延,增加对待查询数据的查询速度。
作为本发明实施例可选的一种实施方式,如图10所示,图9所示实施例流程步骤S190,可以包括:
S191,将第二关键字信息添加至预设的动态队列中。
在本发明实施例中,动态队列预先存储在本地缓存集群中。可以在本地缓存集群中预先存储动态队列,该动态队列中可以包括第二关键字信息,而且在本地缓存集群中查询不到待查询数据的情况下,可以将第二关键字信息添加至该动态队列中,便于本地缓存集群利用第二关键字信息,将与该第二关键字信息对应的待查询数据缓存至本地缓存中。
S192,以预设的间隔时刻,从动态队列中依次提取第二关键字信息,并将所提取的第二关键字信息对应的待查询数据缓存至本地缓存集群中。
本地缓存集群中的动态队列里,包括多个第二关键字信息,因此本地缓存集群可以以预设的间隔时刻,从动态队列中依次提取第二关键字信息,并将所提取的第二关键字信息对应的待查询数据缓存至本地缓存集群中。预设的间隔时刻可以为预先设置的一个间隔时刻,该时间间隔可以根据经验或者实验进行设置,例如,可以将其设置为一分钟,即,每间隔一分钟,将待查询数据缓存至本地缓存集群中。
或者,S191,将第二关键字信息添加至预设的动态队列中。
S193,在接收到针对待查询数据的查询请求时,在动态队列中存在待查询数据的第二关键字信息的情况下,将待查询数据缓存至本地缓存集群中。
或者,也可以在接收到用户终端发送的针对待查询数据的查询请求之后,并在本地缓存集群中未查找到待查询数据,以及在远程缓存集群中查询到待查询数据时,且动态队列中存在待查询数据对应的第二关键字信息,则管理服务器可以将该待查询数据缓存至本地缓存集群中。
作为本发明实施例可选的一种实施方式,如图11所示,在图9所示实施例流程步骤S160之后,本发明实施例提供的数据缓存方法还可以包括:
S230,在本地缓存集群中能够查询到待查询数据的情况下,将待查询数据,以及待查询数据的关联数据进行复制,得到待查询数据的副本,以及关联数据的副本。
在本地缓存集群中能够查询到待查询数据的情况下,可以将待查询数据,以及待查询数据的关联数据进行复制,得到待查询数据的副本,以及关联数据的副本。需要说明的是,此处的关联数据可以指,待查询数据缓存在缓存集群时所引用的数据,同时将待查询数据和关联数据进行复制的目的在于,当对待查询数据的副本或者关联数据的副本进行处理,例如变更处理,将不引起待查询数据和关联数据的变化。
S240,发送待查询数据的副本至用户终端。
在得到待查询数据的副本之后,可以将该待查询数据的副本发送至用户终端,这样一来,能够保证在本地缓存集群中始终缓存有待查询数据,避免因将待查询数据发送至用户终端,而导致本地缓存集群中无该待查询数据,当用户终端需要再次查询该待查询数据时,再次调用远程缓存集群进行查询以及将查询到的待查询数据缓存至本地缓存集群的情况。
本发明实施例提供了一种数据缓存装置的一种具体实施例,与图1所示流程相对应,参考图12,图12为本发明实施例的一种数据缓存装置的一种结构示意图,可以包括:
第一获取模块310,用于针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,当前状态信息包括:远程缓存集群的当前负载信息。
调整模块320,用于在各远程缓存集群的当前状态信息满足预设的数量调整条件的情况下,调整与管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。
作为本发明实施例一种可选的实施方式,在图12所示实施例装置的基础上,如图13所示,本发明实施例提供的数据缓存装置还可以包括:
第二获取模块410,用于获取预设的缓存配置信息中的连接数量以及多个远程缓存集群的标识号,连接数量表示与管理服务器建立连接的多个远程缓存集群的数量。
更新模块420,用于对缓存配置信息中的连接数量以及各远程缓存集群对应的标识号进行更新,得到更新后的缓存配置信息,更新后的缓存配置信息中包括:经数量调整后的各远程缓存集群对应的标识号,以及新的连接数量。
作为本发明实施例一种可选的实施方式,上述更新模块420,具体用于:
将所述缓存配置信息中的连接数量更新为新的连接数量;从预先存储的多个远程缓存集群的标识号中,选取第一预设数量个远程缓存集群,并将所选取的远程缓存集群的标识号添加至所述缓存配置信息中,所述第一预设数量为需要增加的远程缓存集群的数量;
或者,
将所述缓存配置信息中的连接数量更新为新的连接数量;从与所述管理服务器已建立连接的多个远程缓存集群中,选取第二预设数量个远程缓存集群,并将所选取的远程缓存集群的标识号从所述缓存配置信息中删除,所述第二预设数量为需要减少的远程缓存集群的数量。
作为本发明实施例一种可选的实施方式,当前负载信息中包括:远程缓存集群的中央处理单元使用率,如图14所示,上述调整模块320,可以包括:
第一判断子模块321,用于判断各远程缓存集群的中央处理单元使用率,是否大于或等于第一预设负载阈值,第一预设负载阈值用于标识远程缓存集群是否能够继续缓存待缓存数据。
增大子模块322,用于如果中央处理单元使用率大于或等于第一预设负载阈值,则增大与管理服务器建立连接的远程缓存集群的数量。
第一维持子模块323,用于如果中央处理单元使用率小于第一预设负载阈值,则维持与管理服务器建立连接的远程缓存集群的数量不变。
或者,第二判断子模块324,用于判断各远程缓存集群的中央处理单元使用率,是否小于或等于第二预设负载阈值,第二预设负载阈值用于标识远程缓存集群是否能够继续缓存待缓存数据,且第二预设负载阈值小于第一预设负载阈值。
减小子模块325,用于如果中央处理单元使用率小于或等于第二预设负载阈值,则减小与管理服务器建立连接的远程缓存集群的数量。
第二维持子模块326,用于如果中央处理单元使用率大于第二预设负载阈值,则维持与管理服务器建立连接的远程缓存集群的数量不变。
作为本发明实施例一种可选的实施方式,在图12所示实施例装置的基础上,如图15所示,本发明实施例提供的数据缓存装置还可以包括:
维持模块340,用于在各远程缓存集群的中央处理单元使用率,大于第二预设负载阈值,且小于第一预设负载阈值的情况下,维持与管理服务器建立连接的远程缓存集群的数量不变。
作为本发明实施例一种可选的实施方式,在图12所示实施例装置的基础上,如图16所示,本发明实施例提供的数据缓存装置还可以包括:
处理模块330,用于获取待缓存数据,并将待缓存数据缓存至经数量调整后的远程缓存集群。
作为本发明实施例一种可选的实施方式,如图17所示,上述处理模块330,可以包括:
生成子模块331,用于利用更新后的缓存配置信息中包含的,新的连接数量以及各远程缓存集群对应的标识号,生成多个键值对,键值对表示第一关键字信息与远程缓存集群的标识号之间的对应关系;键表示第一关键字信息,值表示远程缓存集群对应的标识号。
获取子模块332,用于获取用户终端对应的哈希值。
匹配子模块333,用于在多个键值对中匹配与哈希值相同的第一关键字信息。
处理子模块334,用于利用匹配得到的第一关键字信息对应的键值对的标识号,得到用户终端的目标远程缓存集群。
第一缓存子模块335,用于将用户终端的待缓存数据缓存至目标远程缓存集群。
作为本发明实施例一种可选的实施方式,如图18所示,上述获取子模块332,可以包括:
获取单元3321,用于获取用户终端的终端标识。
取余单元3322,用于对终端标识与新的连接数量进行取余运算,得到哈希值。
作为本发明实施例一种可选的实施方式,在图12所示实施例装置的基础上,如图19所示,本发明实施例提供的数据缓存装置还可以包括:
第三获取模块350,用于获取待查询数据的关键字信息,以作为第二关键字信息。
第一查询模块360,用于利用第二关键字信息,在本地缓存集群中查询待查询数据。
第二查询模块370,用于在本地缓存集群中查询不到待查询数据的情况下,在远程缓存集群中查询待查询数据,得到待查询数据。
第一发送模块380,用于发送待查询数据至用户终端。
缓存模块390,用于将待查询数据缓存至本地缓存集群中。
作为本发明实施例可选的一种实施方式,如图20所示,上述缓存模块390,可以包括:
添加子模块391,用于将第二关键字信息添加至预设的动态队列中,动态队列预先存储在本地缓存集群中。
第二缓存子模块392,用于以预设的间隔时刻,从动态队列中依次提取第二关键字信息,并将所提取的第二关键字信息对应的待查询数据缓存至本地缓存集群中。
或者,添加子模块391,用于将第二关键字信息添加至预设的动态队列中,动态队列预先存储在本地缓存集群中。
第三缓存子模块393,用于在接收到针对待查询数据的查询请求时,在动态队列中存在待查询数据的第二关键字信息的情况下,将待查询数据缓存至本地缓存集群中。
作为本发明实施例可选的一种实施方式,在图19所示实施例装置的基础上,如图21所示,本发明实施例提供的数据缓存装置还可以包括:
复制模块430,用于在本地缓存集群中能够查询到待查询数据的情况下,将待查询数据,以及待查询数据的关联数据进行复制,得到待查询数据的副本,以及关联数据的副本。
第二发送模块440,用于发送待查询数据的副本至用户终端。
本发明实施例还提供了一种电子设备,如图22所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信。
存储器503,用于存放计算机程序。
处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:
针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,当前状态信息包括:远程缓存集群的当前负载信息。
在各远程缓存集群的当前状态信息满足预设的数量调整条件的情况下,调整与管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一数据缓存方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一数据缓存方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (13)

1.一种数据缓存方法,其特征在于,所述方法包括:
针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,所述当前状态信息包括:远程缓存集群的当前负载信息;
在各远程缓存集群的所述当前状态信息满足预设的数量调整条件的情况下,调整与所述管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。
2.根据权利要求1所述的方法,其特征在于,在针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息的步骤之前,所述方法还包括:
获取预设的缓存配置信息中的连接数量以及所述多个远程缓存集群的标识号,所述连接数量表示与所述管理服务器建立连接的多个远程缓存集群的数量;
在所述在各远程缓存集群的所述当前状态信息满足预设的数量调整条件的情况下,调整与所述管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群之后,所述方法还包括:
对所述缓存配置信息中的连接数量以及各远程缓存集群对应的标识号进行更新,得到更新后的缓存配置信息,所述更新后的缓存配置信息中包括:经数量调整后的各远程缓存集群对应的标识号,以及新的连接数量。
3.根据权利要求2所述的方法,其特征在于,所述对所述缓存配置信息中的连接数量以及各远程缓存集群对应的标识号进行更新,得到更新后的缓存配置信息的步骤,包括:
将所述缓存配置信息中的连接数量更新为新的连接数量;从预先存储的多个远程缓存集群的标识号中,选取第一预设数量个远程缓存集群,并将所选取的远程缓存集群的标识号添加至所述缓存配置信息中,所述第一预设数量为需要增加的远程缓存集群的数量;
或者,
将所述缓存配置信息中的连接数量更新为新的连接数量;从与所述管理服务器已建立连接的多个远程缓存集群中,选取第二预设数量个远程缓存集群,并将所选取的远程缓存集群的标识号从所述缓存配置信息中删除,所述第二预设数量为需要减少的远程缓存集群的数量。
4.根据权利要求1所述的方法,其特征在于,所述当前负载信息中包括:所述远程缓存集群的中央处理单元使用率,所述在各远程缓存集群的所述当前状态信息满足预设的数量调整条件的情况下,调整与所述管理服务器建立连接的远程缓存集群的数量的步骤,包括:
判断各远程缓存集群的中央处理单元使用率,是否大于或等于第一预设负载阈值,所述第一预设负载阈值用于标识所述远程缓存集群是否能够继续缓存待缓存数据;如果所述中央处理单元使用率大于或等于所述第一预设负载阈值,则增大与所述管理服务器建立连接的远程缓存集群的数量;
或者,
判断各所述远程缓存集群的中央处理单元使用率,是否小于或等于第二预设负载阈值,所述第二预设负载阈值用于标识所述远程缓存集群是否能够继续缓存所述待缓存数据,且所述第二预设负载阈值小于所述第一预设负载阈值;如果所述中央处理单元使用率小于或等于所述第二预设负载阈值,则减小与所述管理服务器建立连接的远程缓存集群的数量。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述各远程缓存集群的中央处理单元使用率,大于所述第二预设负载阈值,且小于所述第一预设负载阈值的情况下,维持与所述管理服务器建立连接的远程缓存集群的数量不变。
6.根据权利要求2所述的方法,其特征在于,在所述在各远程缓存集群的所述当前状态信息满足预设的数量调整条件的情况下,调整与所述管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群的步骤之后,所述方法还包括:
获取待缓存数据,并将所述待缓存数据缓存至所述经数量调整后的远程缓存集群。
7.根据权利要求6所述的方法,其特征在于,所述将所述待缓存数据缓存至所述经数量调整后的远程缓存集群的步骤,包括:
利用所述更新后的缓存配置信息中包含的,所述新的连接数量以及各远程缓存集群对应的标识号,生成多个键值对,所述键值对表示第一关键字信息与所述远程缓存集群的标识号之间的对应关系;所述键表示所述第一关键字信息,所述值表示所述远程缓存集群对应的标识号;
获取用户终端对应的哈希值;
在所述多个键值对中匹配与所述哈希值相同的第一关键字信息;
利用匹配得到的第一关键字信息对应的键值对的标识号,得到所述用户终端的目标远程缓存集群;
将所述用户终端的待缓存数据缓存至所述目标远程缓存集群。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取待查询数据的关键字信息,以作为第二关键字信息;
利用所述第二关键字信息,在本地缓存集群中查询所述待查询数据;
在所述本地缓存集群中查询不到所述待查询数据的情况下,在所述远程缓存集群中查询所述待查询数据,得到所述待查询数据;
发送所述待查询数据至用户终端;
将所述待查询数据缓存至所述本地缓存集群中。
9.根据权利要求8所述的方法,其特征在于,所述将所述待查询数据缓存至所述本地缓存集群中的步骤,包括:
将所述第二关键字信息添加至预设的动态队列中,所述动态队列预先存储在所述本地缓存集群中;以预设的间隔时刻,从所述动态队列中依次提取第二关键字信息,并将所提取的第二关键字信息对应的待查询数据缓存至所述本地缓存集群中;
或者,将所述第二关键字信息添加至预设的动态队列中,在接收到针对所述待查询数据的查询请求时,在所述动态队列中存在所述待查询数据的第二关键字信息的情况下,将所述待查询数据缓存至所述本地缓存集群中。
10.根据权利要求8所述的方法,其特征在于,在所述利用所述第二关键字信息,在本地缓存集群中查询所述待查询数据的步骤之后,所述方法还包括:
在所述本地缓存集群中能够查询到所述待查询数据的情况下,将所述待查询数据,以及所述待查询数据的关联数据进行复制,得到所述待查询数据的副本,以及所述关联数据的副本;
发送所述待查询数据的副本至所述用户终端。
11.一种数据缓存装置,其特征在于,所述装置包括:
第一获取模块,用于针对与管理服务器已建立连接的多个远程缓存集群,获取各远程缓存集群的当前状态信息,所述当前状态信息包括:远程缓存集群的当前负载信息;
调整模块,用于在各远程缓存集群的所述当前状态信息满足预设的数量调整条件的情况下,调整与所述管理服务器建立连接的远程缓存集群的数量,得到经数量调整后的远程缓存集群。
12.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-10任一所述的方法步骤。
13.一种计算机存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-10任一所述的方法步骤。
CN202010146643.2A 2020-03-05 2020-03-05 数据缓存方法、装置、电子设备及计算机存储介质 Pending CN111367672A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010146643.2A CN111367672A (zh) 2020-03-05 2020-03-05 数据缓存方法、装置、电子设备及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010146643.2A CN111367672A (zh) 2020-03-05 2020-03-05 数据缓存方法、装置、电子设备及计算机存储介质

Publications (1)

Publication Number Publication Date
CN111367672A true CN111367672A (zh) 2020-07-03

Family

ID=71206665

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010146643.2A Pending CN111367672A (zh) 2020-03-05 2020-03-05 数据缓存方法、装置、电子设备及计算机存储介质

Country Status (1)

Country Link
CN (1) CN111367672A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112291310A (zh) * 2020-10-14 2021-01-29 杭州迪普科技股份有限公司 一种统计连接数的方法及装置
CN113760933A (zh) * 2021-08-25 2021-12-07 福建天泉教育科技有限公司 一种数据更新方法及终端
CN115061947A (zh) * 2022-06-08 2022-09-16 北京百度网讯科技有限公司 资源管理方法、装置、设备和存储介质
CN117056363A (zh) * 2023-07-19 2023-11-14 广州三七极耀网络科技有限公司 数据缓存方法、系统、设备以及存储介质
CN117687727A (zh) * 2023-07-11 2024-03-12 荣耀终端有限公司 增加缓存的方法及相关产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6038651A (en) * 1998-03-23 2000-03-14 International Business Machines Corporation SMP clusters with remote resource managers for distributing work to other clusters while reducing bus traffic to a minimum
US20170316078A1 (en) * 2016-04-28 2017-11-02 Snowflake Computing, Inc. Multi-Cluster Warehouse
CN109032794A (zh) * 2018-07-12 2018-12-18 广州市闲愉凡生信息科技有限公司 一种电子商务系统的Cache对象缓存方法
CN109388657A (zh) * 2018-09-10 2019-02-26 平安科技(深圳)有限公司 数据处理方法、装置、计算机设备及存储介质
US10216770B1 (en) * 2014-10-31 2019-02-26 Amazon Technologies, Inc. Scaling stateful clusters while maintaining access
CN109729108A (zh) * 2017-10-27 2019-05-07 阿里巴巴集团控股有限公司 一种防止缓存击穿的方法、相关服务器及系统
US20190354402A1 (en) * 2018-05-17 2019-11-21 International Business Machines Corporation Optimizing dynamical resource allocations for cache-friendly workloads in disaggregated data centers

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6038651A (en) * 1998-03-23 2000-03-14 International Business Machines Corporation SMP clusters with remote resource managers for distributing work to other clusters while reducing bus traffic to a minimum
US10216770B1 (en) * 2014-10-31 2019-02-26 Amazon Technologies, Inc. Scaling stateful clusters while maintaining access
US20170316078A1 (en) * 2016-04-28 2017-11-02 Snowflake Computing, Inc. Multi-Cluster Warehouse
CN109729108A (zh) * 2017-10-27 2019-05-07 阿里巴巴集团控股有限公司 一种防止缓存击穿的方法、相关服务器及系统
US20190354402A1 (en) * 2018-05-17 2019-11-21 International Business Machines Corporation Optimizing dynamical resource allocations for cache-friendly workloads in disaggregated data centers
CN109032794A (zh) * 2018-07-12 2018-12-18 广州市闲愉凡生信息科技有限公司 一种电子商务系统的Cache对象缓存方法
CN109388657A (zh) * 2018-09-10 2019-02-26 平安科技(深圳)有限公司 数据处理方法、装置、计算机设备及存储介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112291310A (zh) * 2020-10-14 2021-01-29 杭州迪普科技股份有限公司 一种统计连接数的方法及装置
CN112291310B (zh) * 2020-10-14 2022-04-26 杭州迪普科技股份有限公司 一种统计连接数的方法及装置
CN113760933A (zh) * 2021-08-25 2021-12-07 福建天泉教育科技有限公司 一种数据更新方法及终端
CN113760933B (zh) * 2021-08-25 2023-11-03 福建天泉教育科技有限公司 一种数据更新方法及终端
CN115061947A (zh) * 2022-06-08 2022-09-16 北京百度网讯科技有限公司 资源管理方法、装置、设备和存储介质
CN117687727A (zh) * 2023-07-11 2024-03-12 荣耀终端有限公司 增加缓存的方法及相关产品
CN117056363A (zh) * 2023-07-19 2023-11-14 广州三七极耀网络科技有限公司 数据缓存方法、系统、设备以及存储介质
CN117056363B (zh) * 2023-07-19 2024-03-19 广州三七极耀网络科技有限公司 数据缓存方法、系统、设备以及存储介质

Similar Documents

Publication Publication Date Title
CN111367672A (zh) 数据缓存方法、装置、电子设备及计算机存储介质
CN109660607B (zh) 一种业务请求分发方法、接收方法、装置及服务器集群
US11870871B2 (en) Methods and apparatus for serving content to customer devices based on dynamic content popularity
WO2021135835A1 (zh) 资源获取方法、装置及cdn网络中的节点设备
CN109299144B (zh) 一种数据处理方法、装置、系统及应用服务器
CA2896865C (en) Method and system for using a recursive event listener on a node in hierarchical data structure
CN108647240B (zh) 一种统计访问量的方法、装置、电子设备及存储介质
CN110324680B (zh) 一种视频推送方法、装置及服务器、客户端、存储介质
CN111782692B (zh) 一种频率控制方法及装置
US10509716B2 (en) Automated recovery of flighted features based on service requests
CN110858843A (zh) 业务请求处理方法、装置及计算机可读存储介质
CN111753223A (zh) 一种访问控制的方法和装置
US20070265976A1 (en) License distribution in a packet data network
CN108156257B (zh) 一种信息推送方法及装置
CN111522836B (zh) 一种数据查询方法、装置、电子设备及存储介质
CN110311975B (zh) 一种数据请求处理方法及装置
CN111125138A (zh) 一种轮询查询数据的方法、装置、计算机设备及存储介质
CN110955460B (zh) 一种服务进程启动方法、装置、电子设备和存储介质
CN113377817A (zh) 数据处理方法、系统、设备及存储介质
CN111367691B (zh) 数据反馈方法及装置、电子设备和可存储介质
CN110727895B (zh) 一种敏感词发送方法、装置、电子设备及存储介质
CN108737493B (zh) 一种地址分配方法、装置及电子设备
CN110581842B (zh) Dns请求的处理方法及服务器
CN110691143B (zh) 一种文件推送方法、装置、电子设备及介质
CN112860432A (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