CN111049882B - 缓存状态处理系统、方法、装置及计算机可读存储介质 - Google Patents
缓存状态处理系统、方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111049882B CN111049882B CN201911095559.6A CN201911095559A CN111049882B CN 111049882 B CN111049882 B CN 111049882B CN 201911095559 A CN201911095559 A CN 201911095559A CN 111049882 B CN111049882 B CN 111049882B
- Authority
- CN
- China
- Prior art keywords
- cache
- target
- client
- index
- monitoring
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本说明书实施例公开一种缓存状态处理系统、方法及计算机可读存储介质,在所述缓存状态处理系统中,包括缓存客户端、监控服务端以及缓存服务端,缓存客户端用于获取表征缓存状态的目标统计指标,并将目标统计指标发送给监控服务端,监控服务端用于对目标统计指标进行分析处理,确定缓存状态,并在缓存状态为异常时,确定目标处置策略,缓存服务端用于基于目标处置策略,生成目标处置指令,并发送给缓存客户端,以使缓存客户端执行目标处置指令,进行缓存恢复。上述方案能够有效的实现对缓存状态的监控、预警以及处置,适用于各种系统下的各个业务场景。
Description
技术领域
本说明书实施例涉及计算机技术领域,尤其涉及一种缓存状态处理系统、方法、装置及计算机可读存储介质。
背景技术
在日常业务场景中,为了提升整体的业务处理性能以及高并发场景下的处理能力,通常需要使用到缓存,缓存的使用能够避免频繁地从数据库中读取数据,缓解数据库的压力。由于缓存的高可用性以及时效性能够影响业务处理的性能,因此,对各个业务场景中缓存状态的监控和处理是至关重要的。
发明内容
本说明书实施例提供及一种缓存状态处理系统、方法、装置及计算机可读存储介质。
第一方面,本说明书实施例提供一种缓存状态处理系统,包括:
缓存客户端、监控服务端以及缓存服务端,所述缓存客户端、所述监控服务端以及所述缓存服务端两两通信连接;
所述缓存客户端,用于根据运行过程中采集到的目标数据源信息,以及预设的缓存统计指标生成规则,生成目标统计指标,并将所述目标统计指标发送给监控服务端;
所述监控服务端,用于根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,若是,生成目标处置策略,并将所述目标处置策略发送给所述缓存服务端;
所述缓存服务端,用于根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,以使所述缓存客户端通过执行所述目标处置指令进行缓存修复。
第二方面,本说明书实施例提供一种缓存状态处理方法,应用于缓存状态处理系统中,所述缓存状态处理系统包括缓存客户端、监控服务端以及缓存服务端,所述方法包括:
所述缓存客户端根据运行过程中采集到的目标数据源信息,以及预设的缓存统计指标生成规则,生成目标统计指标,并将所述目标统计指标发送给监控服务端;
所述监控服务端根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,若是,生成目标处置策略,并将所述目标处置策略发送给所述缓存服务端;
所述缓存服务端根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,以使所述缓存客户端通过执行所述目标处置指令进行缓存修复。
第三方面,本说明书实施例提供一种缓存状态处理装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行上述任一项所述方法的步骤。
第四方面,本说明书实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
本说明书实施例有益效果如下:
本说明书实施例提供一种缓存状态处理系统,包括缓存客户端、监控服务端以及缓存服务端,其中,缓存客户端存储有缓存数据,缓存客户端基于运行过程中采集到的目标数据源信息,生成目标统计指标,通过目标统计指标来表征缓存客户端的缓存性能,将目标统计指标发送给监控服务端;监控服务端根据目标统计指标以及预设预警条件,确定缓存客户端的缓存状态,以此能够更为准确的识别缓存异常,并且在缓存状态异常时生成处置策略,并将处置策略发送给缓存服务端;缓存服务端根据目标处置策略,组装目标处置指令,并将目标处置指令发送给缓存客户端,以使缓存客户端通过执行目标处置指令对缓存进行修复,以此能够及时修复异常的缓存数据。因此,本说明书实施例中两两通信连接的缓存客户端、监控服务端以及缓存服务端,能够有效实现对缓存客户端的各项统计指标的监控、预警以及处置,进而能够高效、准确的发现并修复异常的缓存数据。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本说明书的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本说明书实施例第一方面提供的一种缓存状态处理系统的示意图;
图2为本说明书实施例提供的一种缓存状态处理系统的活动示意图;
图3为本说明书实施例第二方面提供的一种缓存状态处理方法的流程图;
图4为本说明书实施例第三方面提供的一种缓存状态处理装置的示意图。
具体实施方式
为了更好的理解上述技术方案,下面通过附图以及具体实施例对本说明书实施例的技术方案做详细的说明,应当理解本说明书实施例以及实施例中的具体特征是对本说明书实施例技术方案的详细的说明,而不是对本说明书技术方案的限定,在不冲突的情况下,本说明书实施例以及实施例中的技术特征可以相互组合。
第一方面,本说明书实施例提供一种缓存状态处理系统,如图1所示,为本说明书实施例提供的一种缓存状态处理系统的示意图,该系统包括:缓存客户端、监控服务端以及缓存服务端,所述缓存客户端、所述监控服务端以及所述缓存服务端两两通信连接。
所述缓存客户端,用于根据运行过程中采集到的目标数据源信息,以及预设的缓存统计指标生成规则,生成目标统计指标,并将所述目标统计指标发送给监控服务端;
所述监控服务端,用于根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,若是,生成目标处置策略,并将所述目标处置策略发送给所述缓存服务端。
所述缓存服务端,用于根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,以使所述缓存客户端通过执行所述目标处置指令进行缓存修复。
本说明书实施例中,缓存客户端为需要接入缓存的各个服务端;监控服务端为提供缓存状态监控及处置策略的端;缓存服务端为能够与监控服务端联动,以及向缓存客户端推送相关指令的端。缓存客户端、监控服务端以及缓存服务端可以为相互独立的装置,也可以集成在一起,这里不做限定。缓存客户端、监控服务端、缓存服务端之间能够通过有线或无线的方式进行通信连接。
本说明书实施例中,缓存客户端的数量可以是一个也可以是多个,缓存客户端能够存储各个业务场景下的缓存数据。以支付宝系统的缓存客户端为例,支付宝系统下可以接入多个缓存客户端,缓存有各个业务场景(例如查询商品信息场景、转账场景等)的业务相关数据(例如热点商品属性数据、账户数据等)。当用户发起业务请求时,例如查询商品信息请求,会首先对缓存客户端中的缓存数据进行查询,判断是否能在缓存数据中查找到所需数据,如果找到所需数据,可以直接反馈给用户,如果没有找到,可以进一步查询数据库中的数据。
本说明书实施例中,目标数据源为目标统计指标的数据来源,目标数据源可以是用户发起的目标数据请求信息,目标数据请求用于查询缓存客户端的缓存数据。目标数据源还可以是缓存客户端的缓存数据的属性信息,例如数据版本信息、时效信息等。预设的缓存统计指标生成规则也可以为预先设置好的,例如,预设的缓存统计指标生成规则可以为缓存命中数生成规则、缓存请求数生成规则、或者缓存击穿数生成规则等,预设的缓存统计指标生成规则可以根据实际需要进行设置,这里不做限定。目标统计指标可以是根据预设的缓存统计指标生成规则的对应统计指标,沿用上面的例子,目标统计指标可以是缓存命中数、缓存请求数、或者缓存击穿数。目标统计指标还可以是对预设的缓存统计指标生成规则生成的统计指标进一步处理得到的指标。
本说明书实施例中,缓存客户端能够支持统计指标的动态增加,以适应各个业务场景下的缓存监控。在获得目标统计指标之后,缓存客户端将目标统计指标上报至监控服务端。具体来讲,缓存客户端中可以设置有指标上报接口,指标上报接口能够与监控服务端建立连接,通过指标上报接口完成目标空集指标的上报过程。
监控服务端在接收到缓存客户端发送的目标统计指标之后,对目标统计指标进行指标分析,以确定目标统计指标是否异常。在具体实施过程中,可以直接将目标统计指标与预设预警条件进行匹配,此时的预设预警条件可以为异常的目标统计指标范围,如果目标统计指标与预设预警条件匹配成功,表明缓存状态异常。另外,还可以先对目标统计指标进行处理,然后将处理后的结果与预设预警条件进行匹配,此时的预设预警条件可以为处理结果的异常范围,如果匹配成功,表明缓存状态异常。当然,还可以通过其他方式进行缓存状态的确定,这里不做限定。当缓存状态异常时,生成目标处置策略,并发送给缓存服务端以使缓存端进行下一步处理。
以先对目标统计指标进行处理,再与预设预警条件匹配的方式为例,所述监控服务端,具体用于:根据预设的缓存监控指标生成规则对所述目标统计指标进行优化处理,生成目标监控指标;在所述目标监控指标满足所述预设预警条件时,确定所述缓存状态异常。
本说明书实施例中,通过预设的缓存监控指标生成规则对目标统计指标进行优化处理,生成目标监控指标,相较于目标统计指标来说,目标监控指标更能够一目了然的反映出缓存状态是否异常。预设的缓存监控指标生成规则可以根据实际需要进行设置,例如,预设的缓存监控指标生成规则可以为缓存命中率生成规则、缓存击穿率生成规则,对应的目标监控指标则可以是缓存命中率、缓存击穿率。当然,目标监控指标还可以是对上述根据预设的缓存监控指标生成规则得到的结果进行进一步处理得到的指标,这里不做限定。
进一步的,在得到目标监控指标之后,将目标监控指标与预设预警条件进行比较,以确定是否需要对缓存客户端采取处理措施。具体来讲,预设预警条件可以根据实际需要进行设定,例如,针对每种目标监控指标,都设置有对应的预警条件,举例来讲,针对目标监控指标为缓存命中率,对应的预设预警条件为缓存命中率小于90%,针对目标监控指标为缓存击穿率,对应的预设预警条件为缓存击穿率大于10%。当然,预设预警条件还可以为多个目标监控指标的预警条件,如,预设预警条件为缓存命中率小于90%且缓存击穿率大于10%。
如果目标监控指标满足预设预警条件,则表明缓存客户端当前缓存的数据可用性较低,无法响应用户请求,即缓存状态异常。此时,需要采取应对措施来对缓存客户端进行修复。本说明书实施例中,可以提供多种处置策略,处置策略可以包含有报警方式、缓存客户端的操作方式等。在某一目标监控指标满足预设预警条件时,可以在多种处置策略中确定出一种处置策略,作为目标处置策略。目标处置策略的确定可以通过多种方式实现,例如,随机在多种处置策略中确定出一种策略作为目标处置策略,或者根据预设预警条件与处置策略的映射关系来确定目标处置策略。本说明书实施例中,处置策略可以通过与其他系统或装置的联动来实现,例如,处置策略中报警方式可以通过和预警系统的交互来实现,通过和缓存服务端的联动实现处置指令的封装等。
本说明书实施例中,缓存服务端可用于支持监控服务端进行缓存的系列操作,可以和监控服务端联动支持完成指令的组装。具体来讲,在接收到监控服务端发送的目标处置策略后,基于目标处置策略生成缓存客户端能够执行的目标处置指令。举例来讲,如果目标处置策略为更新缓存,缓存服务端则生成更新缓存的指令,并将该指令推送给缓存客户端,缓存客户端根据该指令进行缓存更新。
为了对本说明书实施例中的缓存状态处理系统进行说明,下面,分别对缓存客户端、监控服务端以及缓存服务端能够实现的功能进行描述。
一、缓存客户端
缓存客户端的状态可以通过各项统计指标来表征,本说明书实施例中,如图1所示,缓存客户端能够实现各项统计指标的计算、上报,同时也可以接收缓存服务端发送的指令。
为了保证缓存客户端的时效性,本说明书实施例中的缓存客户端在运行过程中,可以设置一预设时间间隔的指标巡检任务,缓存客户端具体用于根据预设时间间隔的指标巡检任务,采集所述目标数据源信息,所述目标数据源信息为所述缓存客户端接收到的目标数据请求对应的请求信息,和/或所述缓存客户端的缓存数据属性信息;并根据预设的缓存统计指标生成规则对所述请求信息和/或所述缓存数据属性信息进行处理,生成所述目标统计指标。
在具体实施过程中,预设时间间隔可以根据实际需要进行设定,以100ms的指标巡检任务为例,每间隔100ms,触发一次目标数据源信息的汇总以及目标统计指标的生成。例如,缓存客户端在检测到指标巡检任务时,可以统计当前指标巡检任务期间缓存客户端接收到的目标数据请求的请求信息以及缓存数据的属性信息;或者,缓存客户端可以统计指标巡检任务当前时刻之前所有的目标数据请求的请求信息以及缓存数据的属性信息。由于缓存客户端的缓存数据能够基于目标处置指令进行修复,因此,为了能够监控修复后的缓存,缓存客户端在当前时刻检测到指标巡检任务时,可以统计缓存修复后到当前时刻期间内的目标数据请求的请求信息以及缓存数据的属性信息,以保证对缓存客户端的准确监控。应理解的是,目标数据请求的请求信息可以包括请求的缓存数据信息,请求的响应结果信息等。缓存数据的属性信息可以包括缓存数据的版本信息、时效信息等。
在进行目标统计指标的生成时,以目标统计指标为缓存命中率为例,每间隔100ms,生成一次缓存命中率,如果当前生成的缓存命中率与上一次指标巡检任务生成的缓存命中率相同,则可以选择不上报监控服务端,如果当前生成的缓存命中率与上一次的缓存命中率不同,则可以将当前生成的缓存命中率进行上报。
另外,在生成目标统计指标时,可以统一目标统计指标的数据结构,在具体实施过程中,可以通过以下方式实现:获取所述缓存客户端的客户端标识,以及与所述目标数据源信息对应的缓存数据的缓存域信息;基于所述客户端标识、所述缓存域信息,以及预设的数据结构,生成所述目标统计指标。
具体来讲,缓存客户端的客户端标识都是唯一的,互不相同。缓存域为用于缓存某一主题数据的区域,不同的缓存域可以缓存不同主题的数据,例如,缓存域A可以用于缓存会员信息,缓存域B可以用于缓存商品信息。在缓存客户端采集目标数据源信息时,例如缓存客户端根据接收到的目标数据请求,确定目标数据请求对应的数据位于哪个缓存域,并将该缓存域的缓存域信息提取出来。
本说明书实施例中,目标统计指标可以包括以下指标中的一者或多者:缓存请求数、缓存命中数、缓存击穿数、缓存更新数、数据项总数、缓存数据版本、缓存数据时效。当然,还可以包括其他指标,这里就不再列举了。不同的目标统计指标可以对应有不同的预设的缓存统计指标生成规则,例如,缓存请求数对应的生成规则为统计缓存客户端接收到全部数据请求的次数,缓存命中数对应的生成规则为统计在缓存数据中查找到数据请求所需数据的次数。预设的数据结构可以根据实际需要进行设定。本说明书实施例中,预设的数据结构为客户端标识、缓存域信息、目标统计指标的结构,如表1所示。在获取到客户端标识、缓存域信息、目标统计指标的结构,按照表1的数据结构来记录目标统计指标。
表1
客户端标识 | 缓存域信息 | 目标统计指标 |
Domainapp1 | Domain1 | 缓存请求数等等 |
Domainapp2 | Domain2 | 缓存请求数等等 |
进一步的,缓存客户端将目标统计指标发送给监控服务端。考虑到接入的缓存客户端数量增加,缓存客户端向监控服务端发送的数据会占用越来越多的带宽,监控服务端的负担会增加,为了降低监控服务端的负担,本说明书实施例中,在所述目标统计指标的数据量大于预设数据量时,对所述目标统计指标进行压缩,并将压缩后的数据发送给所述监控服务端。预设数据量可以根据实际需要进行设置,这里不做限定。另外,除了目标统计指标,缓存客户端还可以获取客户端的版本信息数据,将目标统计指标以及版本信息数据一并发送给监控服务端,如果目标统计指标以及版本信息数据的数据量大于预设数据量时,先进行压缩,将压缩后的数据发送给监控服务端。
本说明书实施例中,缓存客户端在启动后能够与缓存服务端实施监理连接,接收缓存服务端发送的指令,并执行接收到的指令。
二、监控服务端
本说明书实施例中,如图1所示,监控服务端能够接收缓存客户端发送的目标统计指标,对目标统计指标进行分析,并能够进行预警配置,以及根据分析结果确定处置策略,同时监控服务端能够与其他系统进行联动处置。
在具体实施过程中,当监控服务端接收到缓存客户端发送的数据后,如果接收到的数据为压缩数据,则首先对压缩数据进行解压,将解压后的目标统计指标解析成统一的数据结构,如解析成上述表1中的数据结构。接着对目标统计指标进行分析,本说明书实施例中采用预设的缓存监控指标生成规则作为分析方式,预设的监控指标生成规则能够对目标统计指标进行处理,得到监控指标,或者能够对目标统计指标或其他数据同时进行处理,生成监控指标。例如,预设的监控指标生成规则包括缓存命中率生成规则(缓存命中数/缓存请求数)、缓存击穿率生成规则(缓存击穿数/缓存请求数)、缓存更新时效生成规则(缓存更新时间-数据变更时间)以及缓存过期端数生成规则(缓存数据过期数/缓存数据总数)。对应的,得到的目标监控指标为缓存命中率、缓存击穿率、缓存更新时效、缓存过期端数。
本说明书实施例中,预警配置可以为配置预设预警条件,在确定预设预警条件时,可以根据监控指标与预警条件之间的映射关系表,确定与所述目标监控指标对应的所述预设预警条件。具体来讲,针对每个目标监控指标,都有相应的预警条件与之对应,从而构成二者的映射关系表,预警条件可以根据经验值进行设定。举例来讲,监控指标与预警条件之间的映射关系表可以为:缓存命中率对应的预警条件为缓存命中率小于90%,缓存击穿率对应的预警条件为缓存击穿率大于10%,缓存更新时效对应的预警条件为缓存更新时效大于1min,缓存过期端数对应的预警条件为缓存过期端数大于0。监控服务端再计算得到目标监控指标之后,通过查询上述映射关系表,得到与目标监控指标对应的预设预警条件,并将目标监控指标与预设预警条件的内容进行匹配,如果匹配成功(例如计算得到的缓存命中率为88%,预设预警条件为缓存命中率小于90%,则匹配成功),表明现在缓存存在异常,需要采取措施使缓存的各项指标恢复到正常范围,因此需要进一步的确定的缓存处置策略。
本说明书实施例中,在所述目标监控指标满足所述预设预警条件时,根据预警条件与处置策略之间的映射关系表,确定与所述预警条件对应的所述目标处置策略。具体来讲,针对每种预警条件,都可以设置有相应的处置策略,处置策略可以包括以下策略中的一者或多者:报警策略、缓存修复策略、调整缓存更新周期策略,具体的处置策略的内容可以根据实际需要进行设定。举例来讲,与缓存命中率小于90%的预警条件对应的处置策略包括报警策略及缓存修复策略;与缓存击穿率大于10%的预警条件对应的处置策略包括报警策略及缓存修复策略;与缓存更新时效大于1min的预警条件对应的处置策略包括报警策略及调整缓存更新周期策略;与缓存过期端数大于0的预警条件对应的处置策略包括报警策略及缓存修复策略。应理解的是,缓存修复策略可以根据实际需要进行设置,例如,当缓存命中率较低时,缓存客户端会把缓存击穿的数据上报到服务端,服务端组装缓存更新指令,把缓存客户端不存在的数据删除,以此来降低缓存的击穿概率。
当然,还可以将处置策略进一步细化,例如,在缓存命中率小于90%的预警条件下,可以对不同程度的缓存命中率设置不同的处置策略,例如,当缓存命中率小于90%且大于等于80%,则对应的处置策略可以为仅报警;当缓存命中率小于80%时,对应的处置策略可以为报警以及进行缓存更新。
通过缓存客户端的巡检任务能够实现高时效的目标统计指标的获取,因此,监控服务端能够通过计算目标监控指标保证对缓存客户端状态的实时监控,若检测到目标监控指标异常,则通知缓存服务端组装与处置策略对应的指令,并发送给缓存客户端,以使缓存客户端执行该指令使其指标状态恢复正常,有效的保证了缓存的高时效。
本说明书实施例中,处置策略中包括的一个或多个策略可能涉及到多个系统或装置,例如处置策略可能涉及到业务端、缓存域、风险系统、预警系统等,通过各个系统和装置的联动实现处置策略,即,监控服务端能够与多个系统和装置联动以实现对缓存客户端的监控以及预警处置。因此,本说明书实施例中,在确定了目标处置策略后,进一步确定目标处置策略对应的一个或多个执行对象,以将目标处置策略发送给一个或多个执行对象,以使执行对应处理目标处置策略。
三、缓存服务端
如图1所示,缓存服务端可以接收监控服务端发送的包括目标处置策略在内的数据,并基于目标处置策略组装目标处置指令以及推送目标处置指令。在具体实施过程中,缓存服务端具体用于确定需要执行所述目标处置策略的缓存客户端的目标客户端标识;基于所述目标客户端标识以及所述目标处置策略,生成所述目标处置指令,并将所述目标处置指令发送给所述缓存客户端。
考虑到缓存客户端的数量可能是多个,监控服务端生成的目标处置指令可能仅适用于某些特定缓存客户端,其余的特定缓存客户端不需要执行,因此,缓存服务端在组装目标处置指令时,需要确定执行所述目标处置策略的缓存客户端的目标客户端标识。具体的,监控服务端在计算目标监控指标时,可以同时对目标监控指标进行客户端标识的标记,并将满足预设预警条件的目标监控指标的客户端标识发送给缓存客户端,以使缓存服务端将满足预警条件的客户端标识作为目标客户端标识。缓存客户端在组装目标处置指令时,除了目标客户端标识,还可以包括操作的缓存域信息、缓存数据项、以及缓存执行的操作。
进一步的,缓存客户端具体用于:基于接收到的所述目标处置指令,确定所述目标客户端标识是否为所述缓存客户端的自身客户端标识;若是,所述缓存客户端执行所述目标处置指令;若否,所述缓存客户端不执行所述目标处置指令。
本说明书实施例中,缓存服务端可以将目标处置指令统一推送给所有的缓存客户端,各个缓存客户端将目标处置指令中的目标客户端标识与自身客户端标识进行比对,来判断该目标处置指令是否与自己相关。若目标客户端标识与一个缓存客户端的客户端标识相同,则该缓存客户端需要执行该目标处置指令,否则不需要执行。
当然,缓存服务端还可以将目标处置指令进发送给目标客户端标识对应的缓存客户端,即只要缓存客户端接收到目标处置指令,则执行目标处置指令。另外,本说明书实施例中,缓存服务端还需要获取目标处置指令的处置结果,处置结果可以是成功或失败,可以是缓存客户端在执行目标处置指令后主动反馈给缓存服务端,也可以是缓存服务端主动获取的。缓存客户端还可以将处置结果同步到监控服务端,以使监控服务端对处置结果进行记录。当然,监控服务端还可以在处置结果为失败时,重新确定并发送处置策略,以使缓存服务端重新组装处置指令并发送给缓存客户端,使缓存客户端重新执行处置指令。
为了更好的理解本说明书实施例提供的缓存状态处理系统,请参考图2,为本说明书实施例提供的缓存状态处理系统的活动示意图,在图2中,涉及到业务系统、缓存客户端、监控服务端以及缓存服务端之间的交互。
如图2所示,首先业务系统发起业务查询,查询缓存客户端的缓存,如果在缓存中查询到与业务查询对应的数据,则命中,否则未命中,基于命中次数,统计缓存命中数,基于未命中次数,统计缓存未命中数,并通过远程指标上报,将各个统计指标上报给监控服务端。同时,缓存客户端还通过分钟级指标巡检任务触发,进行缓存命中数/未命中数的采集、数据项指标的采集、以及缓存版本指标的采集,并将这些数据进行数据汇总压缩,发送给监控服务端。监控服务端进行数据接收,接收来自缓存客户端的数据,进行数据解压,得到解压后的各项数据,然后获取指标规则(即预设的缓存监控指标生成规则),根据指标规则计算监控指标;获取预设预警条件,将监控指标与预设预警条件进行匹配,判断是否需要出发预警,若是,确定处置策略,将处置策略发送至缓存服务端,以及发送报警。缓存服务端通过处置路由接收处置策略,在接收到处置策略后触发指令的推送,包括识别缓存域、组装处置指令、获取客户端集合,这里的客户端集合可以是业务系统接入的所有缓存客户端的集合,也可以是需要执行处置指令的客户端集合,最后,进行指令推送,同时根据缓存客户端的执行情况更新处置结果。
综上所述,本说明书实施例提供的缓存状态处理系统,能够应用在各种系统环境下的各个业务场景中,即将缓存客户端接入各个系统下的各个业务场景中,对各个业务场景下的数据进行缓存,这样就可以实现采用上述描述的处理过程对各个业务场景的缓存状态进行监控和处理,实现使用同一的方案对使用缓存的场景中的缓存进行处理。本说明书实施例中,通过监控缓存客户端的各个维度的指标状态来实现对缓存状态的实施监控和实时处置,包括缓存请求命中维度、缓存的时效维度、缓存数据的维度,实现了多维度多指标的缓存动态监控。在监控到各项统计指标出现异常时,能够对缓存进行处置,保证缓存的实时更新,以及通过指标巡检任务进行补偿,实现缓存的高时效性。另外,通过对缓存客户端的各项统计指标进行监控来触发一系列的处置执行,能够保证缓存的高可用性,及时处理缓存中过期的数据以及对缓存进行更新。
第二方面,基于同一发明构思,本说明书实施例提供一种缓存状态处理方法,应用于缓存状态处理系统中,所述缓存状态处理系统包括缓存客户端、监控服务端以及缓存服务端,如图3所示,为本说明书实施例提供的一种缓存状态处理方法的流程图,所述方法包括:
步骤S31:所述缓存客户端根据运行过程中采集到的目标数据源信息,以及预设的缓存统计指标生成规则,生成目标统计指标,并将所述目标统计指标发送给监控服务端;
步骤S32:所述监控服务端根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,若是,生成目标处置策略,并将所述目标处置策略发送给所述缓存服务端;
步骤S33:所述缓存服务端根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,以使所述缓存客户端通过执行所述目标处置指令进行缓存修复。
在一种可选实现方式中,所述方法还包括:
所述缓存客户端根据预设时间间隔的指标巡检任务,采集所述目标数据源信息,所述目标数据源信息为所述缓存客户端接收到的目标数据请求对应的请求信息,和/或所述缓存客户端的缓存数据属性信息;
所述生成目标统计指标,包括:
所述缓存客户端根据预设的缓存统计指标生成规则对所述请求信息和/或所述缓存数据属性信息进行处理,生成所述目标统计指标。
在一种可选实现方式中,所述方法还包括:
所述缓存客户端获取所述缓存客户端的客户端标识,以及与所述目标数据源信息对应的缓存数据的缓存域信息;基于所述客户端标识、所述缓存域信息,以及预设的数据结构,生成所述目标统计指标。
在一种可选实现方式中,所述方法还包括:
所述缓存客户端在所述目标统计指标的数据量大于预设数据量时,对所述目标统计指标进行压缩,并将压缩后的数据发送给所述监控服务端。
在一种可选实现方式中,所述监控服务端根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,包括:
所述监控服务端根据所述目标统计指标,以及预设的缓存监控指标生成规则,生成目标监控指标;在所述目标监控指标满足所述预设预警条件时,确定所述缓存状态异常。
在一种可选实现方式中,所述生成目标处置策略包括:
所述监控服务端根据监控指标与预警条件之间的映射关系表,确定与所述目标监控指标对应的所述预设预警条件;在所述目标监控指标满足所述预设预警条件时,根据预警条件与处置策略之间的映射关系表,确定与所述预警条件对应的所述目标处置策略。
在一种可选实现方式中,所述目标处置策略包括以下策略中的一者或多者:报警策略、缓存修复策略、调整缓存更新周期策略。
在一种可选实现方式中,所述缓存服务端根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,包括:
所述缓存服务端确定需要执行所述目标处置策略的缓存客户端的目标客户端标识;基于所述目标客户端标识以及所述目标处置策略,生成所述目标处置指令,并将所述目标处置指令发送给所述缓存客户端。
在一种可选实现方式中,所述方法还包括:
所述缓存客户端基于接收到的所述目标处置指令,确定所述目标客户端标识是否为所述缓存客户端的自身客户端标识;若是,所述缓存客户端执行所述目标处置指令;若否,所述缓存客户端不执行所述目标处置指令。
关于上述方法,其中各个模块的具体功能已经在本说明书实施例提供的缓存状态处理系统的实施例中进行了详细描述,此处将不做详细阐述说明。
第三方面,基于与前述实施例中缓存状态处理系统同样的发明构思,本说明书还提供一种缓存状态处理装置,如图4所示,包括存储器404、处理器402及存储在存储器404上并可在处理器402上运行的计算机程序,所述处理器402执行所述程序时实现前文所述缓存状态处理方法的任一方法的步骤。
其中,在图4中,总线架构(用总线400来代表),总线400可以包括任意数量的互联的总线和桥,总线400将包括由处理器402代表的一个或多个处理器和存储器404代表的存储器的各种电路链接在一起。总线400还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口406在总线400和接收器401和发送器403之间提供接口。接收器401和发送器403可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器402负责管理总线400和通常的处理,而存储器404可以被用于存储处理器402在执行操作时所使用的数据。
第四方面,基于与前述实施例中基于缓存状态处理装置的发明构思,本说明书还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前文所述基于缓存状态处理方法的任一方法的步骤。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本说明书的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本说明书范围的所有变更和修改。
显然,本领域的技术人员可以对本说明书进行各种改动和变型而不脱离本说明书的精神和范围。这样,倘若本说明书的这些修改和变型属于本说明书权利要求及其等同技术的范围之内,则本说明书也意图包含这些改动和变型在内。
Claims (16)
1.一种缓存状态处理系统,所述系统包括:
缓存客户端、监控服务端以及缓存服务端,所述缓存客户端、所述监控服务端以及所述缓存服务端两两通信连接;
所述缓存客户端,用于根据运行过程中采集到的目标数据源信息以及预设的缓存统计指标生成规则,生成目标统计指标,并将所述目标统计指标发送给监控服务端;
所述监控服务端,用于根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,若是,生成目标处置策略,并将所述目标处置策略发送给所述缓存服务端;
所述缓存服务端,用于根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,以使所述缓存客户端通过执行所述目标处置指令进行缓存修复;
所述目标处置策略包括以下策略中的一者或多者:报警策略、缓存修复策略、调整缓存更新周期策略;
所述缓存客户端,具体用于:
获取所述缓存客户端的客户端标识,以及与所述目标数据源信息对应的缓存数据的缓存域信息;
基于所述客户端标识、所述缓存域信息,以及所述目标统计指标,对所述目标统计指标的数据结构进行调整;
将调整数据结构的目标统计指标发送给所述监控服务端。
2.根据权利要求1所述的系统,所述缓存客户端,具体用于:
根据预设时间间隔的指标巡检任务,采集所述目标数据源信息,所述目标数据源信息为所述缓存客户端接收到的目标数据请求对应的请求信息,和/或所述缓存客户端的缓存数据属性信息;
根据预设的缓存统计指标生成规则对所述请求信息和/或所述缓存数据属性信息进行处理,生成所述目标统计指标。
3.根据权利要求1所述的系统,所述缓存客户端,具体用于:
在所述目标统计指标的数据量大于预设数据量时,对所述目标统计指标进行压缩,并将压缩后的数据发送给所述监控服务端。
4.根据权利要求1所述的系统,所述监控服务端,具体用于:
根据预设的缓存监控指标生成规则对所述目标统计指标进行优化处理,生成目标监控指标;
在所述目标监控指标满足所述预设预警条件时,确定所述缓存状态异常。
5.根据权利要求4所述的系统,所述监控服务端,具体用于:
根据监控指标与预警条件之间的映射关系,确定与所述目标监控指标对应的所述预设预警条件;
在所述目标监控指标满足所述预设预警条件时,根据预警条件与处置策略之间的映射关系,确定与所述预设预警条件对应的所述目标处置策略。
6.根据权利要求1所述的系统,所述缓存服务端,具体用于:
确定需要执行所述目标处置策略的缓存客户端的目标客户端标识;
基于所述目标客户端标识以及所述目标处置策略,生成所述目标处置指令,并将所述目标处置指令发送给所述缓存客户端。
7.根据权利要求6所述的系统,所述缓存客户端,具体用于:
基于接收到的所述目标处置指令,确定所述目标客户端标识是否为所述缓存客户端的自身客户端标识;
若是,所述缓存客户端执行所述目标处置指令;
若否,所述缓存客户端不执行所述目标处置指令。
8.一种缓存状态处理方法,应用于缓存状态处理系统中,所述缓存状态处理系统包括缓存客户端、监控服务端以及缓存服务端,所述方法包括:
所述缓存客户端根据运行过程中采集到的目标数据源信息,以及预设的缓存统计指标生成规则,生成目标统计指标,并将所述目标统计指标发送给监控服务端;
所述监控服务端根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,若是,生成目标处置策略,并将所述目标处置策略发送给所述缓存服务端;
所述缓存服务端根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,以使所述缓存客户端通过执行所述目标处置指令进行缓存修复;
所述目标处置策略包括以下策略中的一者或多者:报警策略、缓存修复策略、调整缓存更新周期策略;
所述缓存客户端,具体用于:
获取所述缓存客户端的客户端标识,以及与所述目标数据源信息对应的缓存数据的缓存域信息;
基于所述客户端标识、所述缓存域信息,以及所述目标统计指标,对所述目标统计指标的数据结构进行调整;
将调整数据结构的目标统计指标发送给所述监控服务端。
9.根据权利要求8所述的方法,所述方法还包括:
所述缓存客户端根据预设时间间隔的指标巡检任务,采集所述目标数据源信息,所述目标数据源信息为所述缓存客户端接收到的目标数据请求对应的请求信息,和/所述缓存客户端的缓存数据属性信息;
所述生成目标统计指标,包括:
所述缓存客户端根据预设的缓存统计指标生成规则对所述请求信息和/或所述缓存数据属性信息进行处理,生成所述目标统计指标。
10.根据权利要求8所述的方法,所述方法还包括:
所述缓存客户端在所述目标统计指标的数据量大于预设数据量时,对所述目标统计指标进行压缩,并将压缩后的数据发送给所述监控服务端。
11.根据权利要求8所述的方法,所述监控服务端根据所述目标统计指标,以及预设预警条件,确定所述缓存客户端的缓存状态是否异常,包括:
所述监控服务端根据预设的缓存监控指标生成规则对所述目标统计指标进行优化处理,生成目标监控指标在所述目标监控指标满足所述预设预警条件时,确定所述缓存状态异常。
12.根据权利要求11所述的方法,所述生成目标处置策略包括:
所述监控服务端根据监控指标与预警条件之间的映射关系,确定与所述目标监控指标对应的所述预设预警条件;在所述目标监控指标满足所述预设预警条件时,根据预警条件与处置策略之间的映射关系,确定与所述预警条件对应的所述目标处置策略。
13.根据权利要求8所述的方法,所述缓存服务端根据所述目标处置策略,组装目标处置指令,并将所述目标处置指令发送给所述缓存客户端,包括:
所述缓存服务端确定需要执行所述目标处置策略的缓存客户端的目标客户端标识;基于所述目标客户端标识以及所述目标处置策略,生成所述目标处置指令,并将所述目标处置指令发送给所述缓存客户端。
14.根据权利要求13所述的方法,所述方法还包括:
所述缓存客户端基于接收到的所述目标处置指令,确定所述目标客户端标识是否为所述缓存客户端的自身客户端标识;若是,所述缓存客户端执行所述目标处置指令;若否,所述缓存客户端不执行所述目标处置指令。
15.一种缓存状态处理装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求8-14任一项所述方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求8-14任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911095559.6A CN111049882B (zh) | 2019-11-11 | 2019-11-11 | 缓存状态处理系统、方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911095559.6A CN111049882B (zh) | 2019-11-11 | 2019-11-11 | 缓存状态处理系统、方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111049882A CN111049882A (zh) | 2020-04-21 |
CN111049882B true CN111049882B (zh) | 2023-03-10 |
Family
ID=70232436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911095559.6A Active CN111049882B (zh) | 2019-11-11 | 2019-11-11 | 缓存状态处理系统、方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111049882B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913660B (zh) * | 2020-07-15 | 2022-11-18 | 郑州阿帕斯数云信息科技有限公司 | 打点数据处理方法和系统 |
CN113938429A (zh) * | 2021-09-07 | 2022-01-14 | 南京星云数字技术有限公司 | 流量控制方法、装置及计算机可读存储介质 |
CN114201466B (zh) * | 2021-12-15 | 2024-02-23 | 平安科技(深圳)有限公司 | 防缓存击穿方法、装置、设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103441906A (zh) * | 2013-09-25 | 2013-12-11 | 哈尔滨工业大学 | 基于自主计算的代理缓存集群异常检测系统 |
CN104219327A (zh) * | 2014-09-27 | 2014-12-17 | 上海瀚之友信息技术服务有限公司 | 一种分布式缓存系统 |
CN104618455A (zh) * | 2015-01-12 | 2015-05-13 | 北京中交兴路车联网科技有限公司 | 一种通用缓存系统及其方法 |
CN106529278A (zh) * | 2016-11-07 | 2017-03-22 | 深圳盛灿科技股份有限公司 | 非侵入式监控方法及装置 |
CN108183947A (zh) * | 2017-12-27 | 2018-06-19 | 深圳天源迪科信息技术股份有限公司 | 分布式缓存方法及系统 |
CN109491873A (zh) * | 2018-11-05 | 2019-03-19 | 网易无尾熊(杭州)科技有限公司 | 缓存监控方法、介质、装置和计算设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10362135B2 (en) * | 2017-02-21 | 2019-07-23 | Experian Health, Inc | Monitoring highly distributed computer systems |
CN108153890A (zh) * | 2017-12-28 | 2018-06-12 | 泰康保险集团股份有限公司 | 缓存管理方法与装置 |
-
2019
- 2019-11-11 CN CN201911095559.6A patent/CN111049882B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103441906A (zh) * | 2013-09-25 | 2013-12-11 | 哈尔滨工业大学 | 基于自主计算的代理缓存集群异常检测系统 |
CN104219327A (zh) * | 2014-09-27 | 2014-12-17 | 上海瀚之友信息技术服务有限公司 | 一种分布式缓存系统 |
CN104618455A (zh) * | 2015-01-12 | 2015-05-13 | 北京中交兴路车联网科技有限公司 | 一种通用缓存系统及其方法 |
CN106529278A (zh) * | 2016-11-07 | 2017-03-22 | 深圳盛灿科技股份有限公司 | 非侵入式监控方法及装置 |
CN108183947A (zh) * | 2017-12-27 | 2018-06-19 | 深圳天源迪科信息技术股份有限公司 | 分布式缓存方法及系统 |
CN109491873A (zh) * | 2018-11-05 | 2019-03-19 | 网易无尾熊(杭州)科技有限公司 | 缓存监控方法、介质、装置和计算设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111049882A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111049882B (zh) | 缓存状态处理系统、方法、装置及计算机可读存储介质 | |
CN108279383B (zh) | 电池寿命预测方法、电池数据服务器及电池数据处理系统 | |
WO2021169064A1 (zh) | 一种基于边缘网络的异常处理方法及装置 | |
CN107864063B (zh) | 一种异常监控方法、装置及电子设备 | |
US9176798B2 (en) | Computer-readable recording medium, failure prediction device and applicability determination method | |
CN107169094B (zh) | 信息聚合方法及装置 | |
CN111291079A (zh) | 一种数据的查询方法和装置 | |
CN110971485B (zh) | 业务指标的监控系统及方法 | |
WO2016150468A1 (en) | Building and applying operational experiences for cm operations | |
US20140115400A1 (en) | Device and method for fault management of smart device | |
CN105187554A (zh) | 服务器性能监控方法及系统 | |
CN112416708A (zh) | 异步调用链路监控方法及系统 | |
CN112052227A (zh) | 数据变更日志的处理方法、装置和电子设备 | |
CN107885634B (zh) | 监控中异常信息的处理方法和装置 | |
CN112631687B (zh) | 一种服务集群的配置方法、装置及设备 | |
CN105893150B (zh) | 接口调用频度控制、接口调用请求处理方法及装置 | |
CN110011845B (zh) | 日志采集方法及系统 | |
US20210336887A1 (en) | Method, apparatus and central node server for managing traffic features | |
CN114297034B (zh) | 云平台监控方法及云平台 | |
US7606745B1 (en) | System and method for tracking a billing cycle | |
CN110941568B (zh) | 缓存更新方法、装置、系统、电子设备及介质 | |
CN109587223B (zh) | 数据聚合方法、装置和系统 | |
CN112596974A (zh) | 一种全链路监控方法、装置、设备和存储介质 | |
CN112667281A (zh) | 一种配置信息处理方法及装置 | |
CN117056380B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |