CN113419930B - ***健康状态预测方法、装置、计算机设备和存储介质 - Google Patents

***健康状态预测方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN113419930B
CN113419930B CN202110380678.7A CN202110380678A CN113419930B CN 113419930 B CN113419930 B CN 113419930B CN 202110380678 A CN202110380678 A CN 202110380678A CN 113419930 B CN113419930 B CN 113419930B
Authority
CN
China
Prior art keywords
health
current
prediction
curve
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.)
Active
Application number
CN202110380678.7A
Other languages
English (en)
Other versions
CN113419930A (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.)
Nanjing Suning Software Technology Co ltd
Original Assignee
Nanjing Suning Software 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 Nanjing Suning Software Technology Co ltd filed Critical Nanjing Suning Software Technology Co ltd
Priority to CN202110380678.7A priority Critical patent/CN113419930B/zh
Publication of CN113419930A publication Critical patent/CN113419930A/zh
Priority to CA3154869A priority patent/CA3154869A1/en
Application granted granted Critical
Publication of CN113419930B publication Critical patent/CN113419930B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Hardware Design (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及一种***健康状态预测方法、装置、计算机设备和存储介质。所述方法包括:获取当前时间窗口内***的当前健康曲线;根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数;将当前时间窗口之后的任意一个时段作为预测时段;通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。采用本方法能够提前预知***的健康状态,提高***健康状态分析的时效性。

Description

***健康状态预测方法、装置、计算机设备和存储介质
技术领域
本申请涉及***检测技术领域,特别是涉及一种***健康状态预测方法、装置、计算机设备和存储介质。
背景技术
随着***检测技术的发展,实时感知***的健康状态并根据健康状态对应用请求进行相适应的处理等显得至关重要。然而,计算检测***健康状态需要消耗大量的内存空间和计算资源,而且健康状态的计算在时序性上是落后于***交互的。
传统的***健康状态计算方法,只有在知道了当前时段内***的成功访问次数和失败访问次数后,才可以对当前时段内***的健康状态进行计算,因此,对于***健康状态的计算具有延时性,最快也要在下一个时段或以后才能得知当前时段内***的健康状态,无法提前预知***未来的健康状态。
发明内容
基于此,有必要针对上述技术问题,提供一种能够实现***健康状态预测、提高***健康状态分析的时效性的***健康状态预测方法、装置、计算机设备和存储介质。
一种***健康状态方法,上述方法包括:
获取当前时间窗口内***的当前健康曲线;
根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数;
将当前时间窗口之后的任意一个时段作为预测时段;
通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。
在一个实施例中,获取当前时间窗口内***的当前健康曲线,包括:计算当前时间窗口内***的成功访问次数和失败访问次数;根据成功访问次数和失败访问次数计算当前时间窗口内***的当前健康曲线。
在一个实施例中,根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,包括:选取一定时间范围内的多个历史时间窗口;将当前健康曲线分别与各历史时间窗口内***的健康曲线进行拟合;将与当前健康曲线拟合度最高的健康曲线确定为目标健康曲线。
在一个实施例中,上述方法还包括:获取预设的拟合阈值,在目标健康曲线与当前健康曲线的拟合度大于拟合阈值时,进入通过***在目标历史时段的健康状态预测***在预测时段内的健康状态的步骤。
在一个实施例中,上述方法还包括:在目标健康曲线与当前健康曲线的拟合度小于拟合阈值时,计算预测时段内***的实际健康状态。
在一个实施例中,上述方法还包括:获取预测时段内***的实际健康状态;在预测得到的健康状态与实际健康状态不一致时,对预测时段的预测失败,记录预测失败的次数;在预测失败的次数大于预设次数时,重新选择新的时间窗口作为当前时间窗口,进入获取当前时间窗口内***的当前健康曲线的步骤。
在一个实施例中,上述方法还包括:将预测得到的预测时段内***的健康状态返回到服务请求端。
在一个实施例中,上述方法还包括:在预测得到预测时段内***的健康状态为不健康时,对预测时段内的访问请求进行降级处理。
在一个实施例中,上述方法还包括:计算当前时间窗口内***的成功访问总数和失败访问总数;根据成功访问总数和失败访问总数计算当前时间窗口之后的下一个时段内***的预期访问次数;在当前时间窗口之后的下一个时段内***的实时累计访问次数小于预期访问次数时,以当前时间窗口内***的健康状态预测下一个时段内***的健康状态;在下一个时段内***的健康状态无法预测时,进入获取当前时间窗口内***的当前健康曲线的步骤。
一种***健康状态装置,上述装置包括:
时间窗口获取模块,用于获取当前时间窗口内***的当前健康曲线;
时间差数计算模块,用于根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数;
预测时段选取模块,用于将当前时间窗口之后的任意一个时段作为预测时段;
***状态预测模块,用于通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的***健康状态方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的***健康状态方法的步骤。
上述***健康状态预测方法、装置、计算机设备和存储介质,通过当前时间窗口内***的健康曲线从历史健康曲线中筛选对应的健康曲线,并计算筛选出的健康曲线与当前健康曲线两者所在的时间窗口之间的时间差数,对于当前时间窗口之后的任意一个未来的时段内***的健康状态,可以利用与其相距该时间差数的历史时段内***的健康状态进行预测,从而可以提前预知***的健康状态,提高***健康状态分析的时效性。
附图说明
图1a为一个实施例中***健康状态预测方法的应用环境图;
图1b为另一个实施例中***健康状态预测方法的应用环境图;
图2为一个实施例中***健康状态预测方法的流程示意图;
图3为一个应用实例中利用朴素预测算法进行***健康状态预测的示意图;
图4为一个应用实例中利用复杂预测算法进行***健康状态预测的示意图;
图5为一个应用实例中兼容朴素预测算法和复杂预测算法的***熔断方法的流程示意图;
图6为另一个应用实例中兼容朴素预测算法和复杂预测算法的***熔断方法的流程示意图;
图7为一个实施例中***健康状态预测装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请提供的***健康状态预测方法,可以应用于如图1a所示的应用环境中。其中,服务器102与分布式服务器集群104中的服务器可以通过通信接口进行通信。
具体地,服务器102获取当前时间窗口内分布式服务器集群104***的当前健康曲线,根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数;将当前时间窗口之后的任意一个时段作为预测时段;通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。服务器102可以是分布式服务器集群中的任何一台服务器,也可以是独立于分布式服务器集群所部署的服务器。服务器102可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
也可以应用于如图1b所示的应用环境中,其中,服务器102与代理服务器106可以通过通信接口进行通信。代理服务器106上部署有分布式***的应用程序所对应的边车服务程序(sidecar服务),服务器102通过对边车服务程序进行调用,可以实现***健康状态的预测。
此外,值得说明的是,上述两个实施例只是对本申请涉及的***健康状态预测方法的应用环境进行了举例说明,并不对此进行限定,除上述的微服务构架、边车构架以外其他可以适用本申请方案的***构架方式都可以作为本申请的***健康状态预测方法的应用环境。
在一个实施例中,如图2所示,提供了一种***健康状态预测方法,以该方法应用于图1a或图1b中的服务器为例进行说明,包括以下步骤:
步骤S202:获取当前时间窗口内***的当前健康曲线。
其中,时间窗口是指基于时间的窗口,即在时间窗口框定的这一时间段内,可以对事件或事物进行处理或者反应,时间窗口允许定义窗口大小,窗口大小是指该窗口框定的单位时段的位置以及个数。当前时间窗口是指当前选定的时间窗口。健康曲线指的是判断***是否处于能够被正常地访问状态的判断指标。当前健康曲线是基于当前时间窗口,在当前时间窗口框定的时间范围内***的健康曲线。健康曲线可以通过***健康度或统计***访问量进行计算等。
具体地,服务器可以定义当前时间窗口,在当前时间窗口内统计***的访问量,根据当前时间窗口内***的访问成功次数与访问总数计算当前时间窗口内***的当前健康曲线。
在一个实施例中,获取当前时间窗口内***的当前健康曲线,包括:计算当前时间窗口内***的成功访问次数和失败访问次数;根据成功访问次数和失败访问次数计算当前时间窗口内***的当前健康曲线。
在本实施例中,可以将当前时间窗口中的各时段作为统计周期,统计各时段内***的单位访问成功次数和单位访问失败次数,根据各单位访问成功次数计算当前时间窗口内***的访问成功次数,根据各单位访问失败次数计算当前时间窗口内***的访问失败次数。
更为具体地,例如在一个应用实例中,可以利用滑动计算窗口以及时间桶(TimeBucket)进行***访问次数的统计和计算。
步骤1,定义时间窗口的大小N,当前时间窗口为Window(t)。
步骤2,定义时间桶,当前时间桶为Bucket(t), 采集度量数据,将访问成功或访问失败的数据放入最新的时间桶Bucket(t)内,桶内数据使用原子累加方式进行统计。
步骤3,定义滑动计算窗口C Window,滑动计算窗口大小为N,当前滑动计算窗口CWindow(t)。
根据下述公式运算获得当前滑动计算窗口内***的成功访问次数总计为S(t),成功访问次数总计为F(t):
S (t) = S [Bucket (t)] + S [Bucket (t-1)] +…S [Bucket (t-N+1)] ;
F (t) = F [Bucket (t)] + F [Bucket (t-1)] +…F [Bucket (t-N+1)] 。
其中,当前滑动计算窗口内的成功访问次数和失败访问次数为当前时间窗口内***的成功访问次数和失败访问次数。
步骤S204:根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数。
其中,历史健康曲线指的是当前时间窗口之前***的历史时间窗口内的健康曲线。目标健康曲线指的是与当前健康曲线相匹配的历史健康曲线,例如,可以是与当前健康曲线相似度或拟合度符合一定预设条件的历史健康曲线。
具体地,服务器可以从***的历史健康曲线中进行采样,得到至少一条该***的历史健康曲线,然后将采样的历史健康曲线与当前健康曲线进行对比,当两者的相似度大于一定预设比值时,确定该历史健康曲线为目标健康曲线。计算目标健康曲线所在的历史时间窗口与当前时间窗口相差的时间差数,时间差数可以是两个时间窗口的起始时间之间的差数或两个时间窗口的结束时间之间的差数。
在一个实施例中,根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,包括:选取一定时间范围内的多个历史时间窗口;将当前健康曲线分别与各历史时间窗口内***的健康曲线进行拟合;将与当前健康曲线拟合度最高的健康曲线确定为目标健康曲线。
在本实施例中,可以通过选取采样窗口,并利用采样窗口采样一定时间范围内的多个历史时间窗口,历史时间窗口的大小与当前时间窗口的大小相同,获取各历史时间窗口内***的历史健康曲线,逐一与当前健康曲线进行拟合,将拟合度最高的历史健康曲线确定为目标健康曲线。
其中,对历史时间窗口的采样范围和采样个数等采样参数,可以通过人工智能算法通过预先对该***进行训练和学习,从而确定出最佳的采样参数。
更为具体地,例如在一个应用实例中,可以根据如下方式进行目标健康曲线的确定,此处接着上述内容中的步骤3进行叙述。
步骤4,定义采样周期 M*N*t ,即采样窗口的大小为M*N。采集度量数量填充采样窗口。其中,M为历史时间窗口的个数,N为历史时间窗口的大小,t为当前的时段。
步骤5,将当前时间窗口Window(t)中的当前健康曲线与历史时间窗口中的历史健康曲线进行比对,在多个历史时间窗口Window(m)[m=1,2..M-1]中选择拟合最好的窗口Window(m)。
步骤6,计算当前时间窗口与该历史时间窗口之间的时间差数,即T = t-m。
步骤S206:将当前时间窗口之后的任意一个时段作为预测时段。
其中,时段是指一定的时间周期,例如,一秒、十秒、一分钟等。具体地,可以选取当前时间窗口内的当前时段之后的任意一个时段作为有待预测***健康状态的预测时段。
步骤S208:通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。
具体地,根据目标健康曲线所在的历史时间窗口与当前时间窗口之间的时间差数确定历史时段,历史时段与预测时段的时间长度相同,历史时段的起始时间与预测时段的起始时间之间相差该时间差数。将该历史时段内***的健康状态作为预测依据,采用该历史时段内***的健康状态预测未来对应的预测时段内***的健康状态。
更为具体地,例如在一个应用实例中,确定与预测时段相对应的历史时段的步骤如下,此处接着上述内容中的步骤6进行叙述。
步骤7,服务器可以实时获取时间桶Bucket (t+n-T)作为预测桶,利用Bucket (t+n-T)内***的健康状态预测未来的Bucket (t+n)内***的健康状态。其中,Bucket (t+n)指的是当前时间窗口之后的未来的第n个时间桶(时段)。
上述***健康状态预测方法,通过当前时间窗口内***的健康曲线从历史健康曲线中筛选对应的健康曲线,并计算筛选出的健康曲线与当前健康曲线两者所在的时间窗口之间的时间差数,对于当前时间窗口之后的任意一个未来的时段内***的健康状态,可以利用与其相距该时间差数的历史时段内***的健康状态进行预测,从而可以实现对***健康状态的预测,提高***健康状态计算的时效性。
在一个实施例中,该方法还包括:获取预设的拟合阈值,在目标健康曲线与当前健康曲线的拟合度大于拟合阈值时,进入通过***在目标历史时段的健康状态预测***在预测时段内的健康状态的步骤。
在本实施例中,在利用与预测时段相距时间差数的历史时段进行预测之前,可以先判断当前健康曲线和确定出的目标健康曲线是否达到预测的拟合阈值,若是,则可以进行后续预测的步骤,通过与拟合阈值进行对比验证,可以进一步提高预测的准确度;若否,则可以采用其他方式进行预测或计算,或重新进行窗口选取、拟合对比等。
在一个实施例中,上述方法还包括:在目标健康曲线与当前健康曲线的拟合度小于拟合阈值时,计算预测时段内***的实际健康状态。
在本实施例中,当选取的目标健康曲线与当前健康曲线之间的拟合度不符合预设条件时,可以对预测时段内***的健康状态进行实时计算,得到实际健康状态,从而确保***健康状态分析结果的准确性。
在一个实施例中,该方法还包括:获取预测时段内***的实际健康状态;在预测得到的健康状态与实际健康状态不一致时,对预测时段的预测失败,记录预测失败的次数;在预测失败的次数大于预设次数时,重新选择新的时间窗口作为当前时间窗口,进入获取当前时间窗口内***的当前健康曲线的步骤。
在本实施例中,通过将预测的***健康状态与实际的***健康状态进行对比,当预测结果与实际结果不相符时,可以认为预测失败,并记录预测失败的次数。当预测失败的次数达到预设次数时,服务器可以重新选取时间窗口,将重新选取的时间窗口作为当前时间窗口,并重新进入与历史健康曲线拟合的步骤,确定新的目标健康曲线,计算新的时间差数。
本实施例,在预测失败的次数达到预设次数之前,可以根据一次计算得出的时间差数,对当前时间窗口之后的任意一个时段内***的健康状态进行预测,不需要在每个时段都重新进行曲线拟合,因此,不仅提高了预判的速度,而且可以节省计算资源。另一方面,在预测失败的次数达到预设次数之后,可以重新进行新一轮的历史时间窗口和历史健康曲线的采样,重新进行曲线拟合确定新的目标健康曲线和时间差数,从而使得预测算法可以不断进行学习,不断将***最新的健康状态纳入预测当中,提高预测的准确性。
例如,若当前时间窗口与历史时间窗口匹配,但预测失败,当前时间窗口内健康曲线的健康度为[25%,50%,75%]下一个时间桶中的健康度为t,匹配到的历史时间窗口内健康曲线的健康度为[25%,50%,75%]下一个时间桶中的健康度为100%,由此得出,预测得到t的预测值是100%,但实际计算值为60%,预测失败。此时,服务器会记录当前失败次数,随着滑动时间窗口向后滑动,下一次出现健康度为[25%,50%,75%]的时间窗口时,给出的下一个时间桶的预测值将会是60%,也即是,算法学习了最新的健康状态。
在一个实施例中,该方法还包括:将预测得到的预测时段内***的健康状态返回到服务请求端。
本实施例,可以及时将***健康状态的预测结果返回到请求预测服务的请求端,从而使得服务请求端可以根据返回的预测结果及时采取熔断措施等,维护***的稳定。
在一个实施例中,该方法还包括:在预测得到预测时段内***的健康状态为不健康时,对预测时段内的访问请求进行降级处理。本实施例,根据预测结果可以提前对***的访问请求进行降级或压力转移等处理,提高了***的稳定性。
在一个实施例中,上述方法还包括:计算当前时间窗口内***的成功访问总数和失败访问总数;根据成功访问总数和失败访问总数计算当前时间窗口之后的下一个时段内***的预期访问次数;在当前时间窗口之后的下一个时段内***的实时累计访问次数小于预期访问次数时,以当前时间窗口内***的健康状态预测下一个时段内***的健康状态;在下一个时段内***的健康状态无法预测时,进入获取当前时间窗口内***的当前健康曲线的步骤。
本实施例,在获取当前时间窗口内***的当前健康曲线之前,即利用前述的预测方法(以下,称为复杂预测算法)进行***健康状态预测之前,还可以根据***计算资源的情况判断是否首先利用另一种更为节省计算资源的方法(以下,称为朴素预测算法)进行预测。在朴素预测算法不满足预测条件时,再转入复杂预测算法,两种预测方法相互配合,可以使***健康预测的准确率与计算资源的成本达到动态平衡。
基于上述的朴素预测算法进行预测,由于将基于窗口数量为N的计算逻辑转化为数量为2 的运算逻辑,极大的提高了算法的运行性能。访问次数扩大了性能的差距,实际可节约运算访问次数*(N-2),达到非常可观的性能节约。据实际测试,每10000次访问中可节约2 秒。朴素预测算法可以提供有限的预测能力。使用该算法提供的预测时,准确率达到100%,并且满足以上的性能节约。
在一个应用实例中,基于上述的朴素预测算法进行***健康状态预测的具体过程可以如下:
步骤1':定义时间窗口的大小为N,当前时间窗口为Window(t)。
步骤2':定义时间桶,当前时间桶为Bucket(t), 采集度量数据,将访问成功或访问失败的数据放入最新的时间桶Bucket(t)内,桶内数据使用原子累加方式进行统计。
步骤3':定义滑动计算窗口C Window,滑动计算窗口大小为N,当前滑动计算窗口CWindow(t)。
根据下述公式运算获得当前滑动计算窗口的***的成功访问次数总计为S(t),成功访问次数总计为 F(t):
S (t) = S [Bucket (t)] + S [Bucket (t-1)] +…S [Bucket (t-N+1)] ;
F (t) = F [Bucket (t)] + F [Bucket (t-1)] +…F [Bucket (t-N+1)] ;
其中,当前滑动计算窗口内的成功访问次数和失败访问次数为当前时间窗口内***的成功访问次数和失败访问次数。
步骤4':定义***的健康阈值 Y,并计算预期访问次数C(t):
C (t) = Max{S (t) –(Y/ 1-Y)*F(t),S(t)*(1/Y-1)-F(t)} ;
步骤5':若下一个时间桶(时段)内***的实时统计的访问次数S[Bucket(t+1)]+F[Bucket(t+1)]< C(t) 时,则利用当前C Window(t)的健康状态预测时间窗口Window(t+1)的健康状态。
步骤6':若C(t) =0 或者C(t)-(S [Bucket(t+1) +F [Bucket(t+1)]=0 的情况下,计算***预测时段内的实际健康状态,即判断:
(S(t)+S[Bucket(t+1)]+F[Bucket(t+1)])/(S(t)+F(t)+S[Bucket(t+1)]+F[Bucket(t+1)]))与健康阈值Y之间的大小关系。
步骤7':淘汰过期时间桶,更新滑动计算窗口,重新计算预期访问次数,进入新一轮的预测。
在一个实施例中,上述的***健康预测方法还可以应用于路由器、WAF(WebApplication Firewall,网络应用防护***)路由、应用服务路由算法、***监控等应用领域中,只要是需要进行***健康状态分析的应用领域,本申请涉及的***健康状态预测方法都可以相应地进行灵活应用和横向拓展。
下面,再结合几个应用实例,对本申请的***健康状态预测方法进行更进一步地说明。
如图3至图6所示,图3示出了一个应用实例中利用朴素预测算法进行***健康状态预测的示意图;图4示出了一个应用实例中利用复杂预测算法进行***健康状态预测的示意图;图5示出了一个应用实例中兼容朴素预测算法和复杂预测算法的***熔断方法的流程示意图;图6示出了另一个应用实例中兼容朴素预测算法和复杂预测算法的***熔断方法的流程示意图。
应该理解的是,虽然图2至6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种***健康状态预测装置,包括:时间窗口获取模块702、时间差数计算模块704、预测时段选取模块706和***状态预测模块708,其中:
时间窗口获取模块702,用于获取当前时间窗口内***的当前健康曲线;
时间差数计算模块704,用于根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数;
预测时段选取模块706,用于将当前时间窗口之后的任意一个时段作为预测时段;
***状态预测模块708,用于通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。
在一个实施例中,时间窗口获取模块702计算当前时间窗口内***的成功访问次数和失败访问次数;根据成功访问次数和失败访问次数计算当前时间窗口内***的当前健康曲线。
在一个实施例中,时间差数计算模块704选取一定时间范围内的多个历史时间窗口;将当前健康曲线分别与各历史时间窗口内***的健康曲线进行拟合;将与当前健康曲线拟合度最高的健康曲线确定为目标健康曲线。
在一个实施例中,***状态预测模块708,还用于获取预设的拟合阈值,在目标健康曲线与当前健康曲线的拟合度大于拟合阈值时,进入通过***在目标历史时段的健康状态预测***在预测时段内的健康状态的步骤。
在一个实施例中,***状态预测模块708,还用于在目标健康曲线与当前健康曲线的拟合度小于拟合阈值时,计算预测时段内***的实际健康状态。
在一个实施例中,***状态预测模块708,还用于获取预测时段内***的实际健康状态;在预测得到的健康状态与实际健康状态不一致时,对预测时段的预测失败,记录预测失败的次数; 在预测失败的次数大于预设次数时,重新选择新的时间窗口作为当前时间窗口,进入获取当前时间窗口内***的当前健康曲线的步骤。
在一个实施例中,***状态预测模块708,还用于将预测得到的预测时段内***的健康状态返回到服务请求端。
在一个实施例中,***状态预测模块708,还用于在预测得到预测时段内***的健康状态为不健康时,对预测时段内的访问请求进行降级处理。
在一个实施例中,***状态预测模块708,还用于计算当前时间窗口内***的成功访问总数和失败访问总数;根据成功访问总数和失败访问总数计算当前时间窗口之后的下一个时段内***的预期访问次数;在当前时间窗口之后的下一个时段内***的实时累计访问次数小于预期访问次数时,以当前时间窗口内***的健康状态预测下一个时段内***的健康状态;在下一个时段内***的健康状态无法预测时,进入获取当前时间窗口内***的当前健康曲线的步骤。
关于***健康状态预测装置的具体限定可以参见上文中对于***健康状态预测方法的限定,在此不再赘述。上述***健康状态预测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种***健康状态预测方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取当前时间窗口内***的当前健康曲线;根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数;将当前时间窗口之后的任意一个时段作为预测时段;通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。
在一个实施例中,处理器执行计算机程序实现获取当前时间窗口内***的当前健康曲线时,实现计算当前时间窗口内***的成功访问次数和失败访问次数;根据成功访问次数和失败访问次数计算当前时间窗口内***的当前健康曲线。
在一个实施例中,处理器执行计算机程序实现根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线时,实现选取一定时间范围内的多个历史时间窗口;将当前健康曲线分别与各历史时间窗口内***的健康曲线进行拟合;将与当前健康曲线拟合度最高的健康曲线确定为目标健康曲线。
在一个实施例中,处理器执行计算机程序还实现以下步骤:获取预设的拟合阈值,在目标健康曲线与当前健康曲线的拟合度大于拟合阈值时,进入通过***在目标历史时段的健康状态预测***在预测时段内的健康状态的步骤。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在目标健康曲线与当前健康曲线的拟合度小于拟合阈值时,计算预测时段内***的实际健康状态。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取预测时段内***的实际健康状态;在预测得到的健康状态与实际健康状态不一致时,对预测时段的预测失败,记录预测失败的次数; 在预测失败的次数大于预设次数时,重新选择新的时间窗口作为当前时间窗口,进入获取当前时间窗口内***的当前健康曲线的步骤。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:将预测得到的预测时段内***的健康状态返回到服务请求端。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:在预测得到预测时段内***的健康状态为不健康时,对预测时段内的访问请求进行降级处理。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:计算当前时间窗口内***的成功访问总数和失败访问总数;根据成功访问总数和失败访问总数计算当前时间窗口之后的下一个时段内***的预期访问次数;在当前时间窗口之后的下一个时段内***的实时累计访问次数小于预期访问次数时,以当前时间窗口内***的健康状态预测下一个时段内***的健康状态;在下一个时段内***的健康状态无法预测时,进入获取当前时间窗口内***的当前健康曲线的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取当前时间窗口内***的当前健康曲线;根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线,计算目标健康曲线所在的时间窗口与当前时间窗口之间的时间差数;将当前时间窗口之后的任意一个时段作为预测时段;通过***在目标历史时段的健康状态预测***在预测时段内的健康状态,目标历史时段为预测时段之前且与预测时段相差时间差数的历史时段。
在一个实施例中,计算机程序被处理器执行实现获取当前时间窗口内***的当前健康曲线时,实现计算当前时间窗口内***的成功访问次数和失败访问次数;根据成功访问次数和失败访问次数计算当前时间窗口内***的当前健康曲线。
在一个实施例中,计算机程序被处理器执行实现根据当前健康曲线在***的历史健康曲线中选取对应的目标健康曲线时,实现选取一定时间范围内的多个历史时间窗口;将当前健康曲线分别与各历史时间窗口内***的健康曲线进行拟合;将与当前健康曲线拟合度最高的健康曲线确定为目标健康曲线。
在一个实施例中,计算机程序被处理器执行还实现以下步骤:获取预设的拟合阈值,在目标健康曲线与当前健康曲线的拟合度大于拟合阈值时,进入通过***在目标历史时段的健康状态预测***在预测时段内的健康状态的步骤。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在目标健康曲线与当前健康曲线的拟合度小于拟合阈值时,计算预测时段内***的实际健康状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取预测时段内***的实际健康状态;在预测得到的健康状态与实际健康状态不一致时,对预测时段的预测失败,记录预测失败的次数; 在预测失败的次数大于预设次数时,重新选择新的时间窗口作为当前时间窗口,进入获取当前时间窗口内***的当前健康曲线的步骤。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将预测得到的预测时段内***的健康状态返回到服务请求端。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在预测得到预测时段内***的健康状态为不健康时,对预测时段内的访问请求进行降级处理。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:计算当前时间窗口内***的成功访问总数和失败访问总数;根据成功访问总数和失败访问总数计算当前时间窗口之后的下一个时段内***的预期访问次数;在当前时间窗口之后的下一个时段内***的实时累计访问次数小于预期访问次数时,以当前时间窗口内***的健康状态预测下一个时段内***的健康状态;在下一个时段内***的健康状态无法预测时,进入获取当前时间窗口内***的当前健康曲线的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (9)

1.一种***健康状态预测方法,所述方法包括:
获取当前时间窗口内***的当前健康曲线;
根据所述当前健康曲线在所述***的历史健康曲线中选取对应的目标健康曲线,计算所述目标健康曲线所在的时间窗口与所述当前时间窗口之间的时间差数;
将所述当前时间窗口之后的任意一个时段作为预测时段;
通过所述***在目标历史时段的健康状态预测所述***在所述预测时段内的健康状态,所述目标历史时段为所述预测时段之前且与所述预测时段相差所述时间差数的历史时段;
其中,所述根据所述当前健康曲线在所述***的历史健康曲线中选取对应的目标健康曲线,包括:
选取一定时间范围内的多个历史时间窗口;
将所述当前健康曲线分别与各所述历史时间窗口内所述***的健康曲线进行拟合;
将与所述当前健康曲线拟合度最高的健康曲线确定为目标健康曲线。
2.根据权利要求1所述的方法,其特征在于,所述获取当前时间窗口内***的当前健康曲线,包括:
计算所述当前时间窗口内所述***的成功访问次数和失败访问次数;
根据所述成功访问次数和所述失败访问次数计算所述当前时间窗口内所述***的所述当前健康曲线。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取预设的拟合阈值,在所述目标健康曲线与所述当前健康曲线的拟合度大于所述拟合阈值时,进入所述通过所述***在目标历史时段的健康状态预测所述***在所述预测时段内的健康状态的步骤。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述目标健康曲线与所述当前健康曲线的拟合度小于所述拟合阈值时,计算所述预测时段内所述***的实际健康状态。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述预测时段内所述***的实际健康状态;
在预测得到的健康状态与所述实际健康状态不一致时,对所述预测时段的预测失败,记录预测失败的次数;
在预测失败的次数大于预设次数时,重新选择新的时间窗口作为所述当前时间窗口,进入所述获取当前时间窗口内***的当前健康曲线的步骤;
和/或,
将预测得到的所述预测时段内所述***的健康状态返回到服务请求端;
和/或,
在预测得到所述预测时段内所述***的健康状态为不健康时,对所述预测时段内的访问请求进行降级处理。
6.根据权利要求1至5任意一项所述的方法,其特征在于,所述方法还包括:
计算所述当前时间窗口内所述***的成功访问总数和失败访问总数;
根据所述成功访问总数和所述失败访问总数计算所述当前时间窗口之后的下一个时段内所述***的预期访问次数;
在所述当前时间窗口之后的下一个时段内所述***的实时累计访问次数小于所述预期访问次数时,以所述当前时间窗口内所述***的健康状态预测所述下一个时段内所述***的健康状态;
在所述下一个时段内所述***的健康状态无法预测时,进入所述获取当前时间窗口内***的当前健康曲线的步骤。
7.一种***健康状态预测装置,其特征在于,所述装置包括:
时间窗口获取模块,用于获取当前时间窗口内***的当前健康曲线;
时间差数计算模块,用于根据所述当前健康曲线在所述***的历史健康曲线中选取对应的目标健康曲线,计算所述目标健康曲线所在的时间窗口与所述当前时间窗口之间的时间差数;
预测时段选取模块,用于将所述当前时间窗口之后的任意一个时段作为预测时段;
***状态预测模块,用于通过所述***在目标历史时段的健康状态预测所述***在所述预测时段内的健康状态,所述目标历史时段为所述预测时段之前且与所述预测时段相差所述时间差数的历史时段;
其中,所述根据所述当前健康曲线在所述***的历史健康曲线中选取对应的目标健康曲线,包括:
选取一定时间范围内的多个历史时间窗口;
将所述当前健康曲线分别与各所述历史时间窗口内所述***的健康曲线进行拟合;
将与所述当前健康曲线拟合度最高的健康曲线确定为目标健康曲线。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202110380678.7A 2021-04-09 2021-04-09 ***健康状态预测方法、装置、计算机设备和存储介质 Active CN113419930B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110380678.7A CN113419930B (zh) 2021-04-09 2021-04-09 ***健康状态预测方法、装置、计算机设备和存储介质
CA3154869A CA3154869A1 (en) 2021-04-09 2022-04-11 System health status predicting method, device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110380678.7A CN113419930B (zh) 2021-04-09 2021-04-09 ***健康状态预测方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN113419930A CN113419930A (zh) 2021-09-21
CN113419930B true CN113419930B (zh) 2023-01-06

Family

ID=77712062

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110380678.7A Active CN113419930B (zh) 2021-04-09 2021-04-09 ***健康状态预测方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN113419930B (zh)
CA (1) CA3154869A1 (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106886481A (zh) * 2017-02-28 2017-06-23 深圳市华傲数据技术有限公司 一种***健康度静态分析预测方法及装置
CN106951984A (zh) * 2017-02-28 2017-07-14 深圳市华傲数据技术有限公司 一种***健康度动态分析预测方法及装置
CN110119339A (zh) * 2019-05-07 2019-08-13 上海电气集团股份有限公司 工业设备的健康状态的评估方法、***、设备和存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106886481A (zh) * 2017-02-28 2017-06-23 深圳市华傲数据技术有限公司 一种***健康度静态分析预测方法及装置
CN106951984A (zh) * 2017-02-28 2017-07-14 深圳市华傲数据技术有限公司 一种***健康度动态分析预测方法及装置
CN110119339A (zh) * 2019-05-07 2019-08-13 上海电气集团股份有限公司 工业设备的健康状态的评估方法、***、设备和存储介质

Also Published As

Publication number Publication date
CN113419930A (zh) 2021-09-21
CA3154869A1 (en) 2022-10-09

Similar Documents

Publication Publication Date Title
CN105677538B (zh) 一种基于故障预测的云计算***自适应监测方法
CN108509323B (zh) 基于日志分析的业务处理方法、装置及计算机设备
US8150861B2 (en) Technique for implementing database queries for data streams using a curved fitting based approach
JP4017272B2 (ja) プラント状態推定・予測装置及び方法
CN111585837B (zh) 物联网数据链路监控方法、装置、计算机设备和存储介质
CN113407371A (zh) 数据异常监测方法、装置、计算机设备和存储介质
CN112564951B (zh) 一种规避告警风暴的方法、装置、计算机设备和存储介质
CN111262750B (zh) 一种用于评估基线模型的方法及***
CN111258593A (zh) 应用程序预测模型的建立方法、装置、存储介质及终端
CN112004120A (zh) 平台网络资源播放量的预测方法、装置、设备及存储介质
CN115511398B (zh) 一种基于时间敏感网络的焊接质量智能检测方法及***
CN113723956A (zh) 异常监控方法、装置、设备及存储介质
CN110866682B (zh) 基于历史数据的地下电缆预警方法和装置
CN113419930B (zh) ***健康状态预测方法、装置、计算机设备和存储介质
US11733308B2 (en) Deterioration state estimation system of secondary battery, deterioration state estimation method of secondary battery, and storage medium
Downey A novel changepoint detection algorithm
CN110837529B (zh) 大数据分析监察方法、装置、服务器及可读存储介质
CN109828892B (zh) 异步接口的性能测试方法、装置、计算机设备和存储介质
KR101828456B1 (ko) 부분 고장 데이터를 이용한 소프트웨어 신뢰도 평가모델 선택 시스템 및 방법
CN115934487A (zh) 日志监控告警方法、装置、计算机设备和存储介质
CN115664866A (zh) 访问账号识别方法、装置、计算机设备及存储介质
KR101027242B1 (ko) 공정 제어 네트워크에서의 장애 예측 방법 및 장치
CN117807055B (zh) 存储***的关键性能指标预测、分析方法及相关装置
Heydari et al. Quickest change detection in structured data with incomplete information
CN117289143B (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