发明内容
本发明要解决的技术问题是为了克服现有技术中对于网站可用性缺乏有效的评估手段,评估结果受主观因素影响过大而不够准确的缺陷,提供一种网站可用性的评估方法。
本发明是通过下述技术方案来解决上述技术问题的:
一种网站可用性的评估方法,其特点在于,包括以下步骤:
S1、采集网站的业务订单数据,并按分钟粒度和天粒度汇总业务订单数据,每一天的分钟粒度数据包括1440个数据点,其中业务订单数据包括业务类型、订单的预订时间和订单量;
S2、根据各个业务的季节指数特征和日期特征,基于S1中采集的业务订单数据,得到各个业务在预测日期的每分钟季节指数预测值,然后根据日期对齐情况及历史同期业务增长幅度,得到各个业务在预测日期的增长率,进而计算出各个业务在预测日期的订单量预测值,根据业务在预测日期的订单量预测值和每分钟季节指数预测值,得到业务订单在预测日期的分钟订单量预测值;
S3、根据各个业务的营业收入或订单量在网站的营业收入或订单量所占比重来设置各个业务的权重Wi,其中i遍历满足1≤i≤k的所有整数,0<Wi≤1,k为业务的数量;
S4、根据故障发生的时间段,计算各次故障对各业务订单的影响开始时间和影响结束时间,其中将单次故障所影响的业务订单的数量记为m,单次故障对这m个受影响的业务订单中的第j个的影响开始时间和影响结束时间分别记为T1j和T2j,其中j遍历满足1≤j≤m的所有整数;
S5、计算单次故障造成各业务订单的可用性损失,其中对于第j个受影响业务的总影响时间为Sj=T2j-T1j,Sj的单位为秒数,在单次故障期间的业务订单的实际总量为Aj、预测总量为Fj,据此计算得到影响百分比Pj=(Fj-Aj)/Fj,进而计算得到单次故障对第j个受影响业务造成的可用性损失百分比为UATPtoBusinessj=Sj×Pj/Ssum,上式中Ssum为整个季度的总秒数;
S6、以公式计算单次故障造成的网站可用性损失,上式中单次故障对第j个受影响业务造成的可用性损失为UATPtoBusinessSecondsj,第j个业务的权重为Wj,UATPtoSiteSecondsj为仅考虑第j个业务的情况下、单次故障对网站造成的可用性损失,UATPtoSiteSeconds为单次故障对网站造成的可用性损失;
以公式计算单次故障对网站造成的可用性损失百分比,其中UATPtoSite为单次故障对网站造成的可用性损失百分比,UATPtoSitej为仅考虑第j个业务的情况下单次故障对网站造成的可用性损失百分比,Wj为第j个业务的权重值,其中1≤j≤m,1≤m≤k;
S7、统计预设时间段中发生的所有对网站业务订单有影响的故障,累加每一个故障对网站造成的可用性损失百分比,以得到该预设时间段中网站的总可用性损失百分比;
S8、计算得到该预设时间段中网站的总可用性百分比,总可用性百分比和总可用性损失百分比之和等于1。
需要注意的是,本发明中的术语“各个业务”也可以理解为“各个业务类型的业务”,其实质只是区分不同的业务,对于区分后的业务是单个业务、特定类型的业务或是其他类似的多个业务,并不加以限制。
较佳地,所述各个业务包括酒店、机票、火车票、门票的在线订单业务。
其中,更具体地,本发明中所说的“各个业务”可以指在线旅行网站的酒店、机票、火车票、门票等订单业务。
较佳地,该预设时间段可以为一周、若干周、一个月、若干个月、一个季度或若干个季度。
在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
本发明的积极进步效果在于:本发明的网站可用性的评估方法可以用单一的指标定量地衡量电子商务网站的可用性,计算简单,成本低廉,可用性的评估结果客观准确而实用性强,简化了分析指标,增大了衡量电子商务网站可用性的效果。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
参考图1所示,本实施例的网站可用性的评估方法包括以下步骤:
S1、采集网站的业务订单数据,并按分钟粒度和天粒度汇总业务订单数据,每一天的分钟粒度数据包括1440个数据点,其中业务订单数据包括业务类型、订单的预订时间和订单量;
S2、根据各个业务的季节指数特征和日期特征,基于S1中采集的业务订单数据,得到各个业务在预测日期的每分钟季节指数预测值,然后根据日期对齐情况及历史同期业务增长幅度,得到各个业务在预测日期的增长率,进而计算出各个业务在预测日期的订单量预测值,根据业务在预测日期的订单量预测值和每分钟季节指数预测值,得到业务订单在预测日期的分钟订单量预测值;
S3、根据各个业务的营业收入或订单量在网站的营业收入或订单量所占比重来设置各个业务的权重Wi,其中i遍历满足1≤i≤k的所有整数,0<Wi≤1,k为业务的数量;
S4、根据故障发生的时间段,计算各次故障对各业务订单的影响开始时间和影响结束时间,其中将单次故障所影响的业务订单的数量记为m,单次故障对这m个受影响的业务订单中的第j个的影响开始时间和影响结束时间分别记为T1j和T2j,其中j遍历满足1≤j≤m的所有整数;
S5、计算单次故障造成各业务订单的可用性损失,其中对于第j个受影响业务的总影响时间为Sj=T2j-T1j,Sj的单位为秒数,在单次故障期间的业务订单的实际总量为Aj、预测总量为Fj,据此计算得到影响百分比Pj=(Fj-Aj)/Fj,进而计算得到单次故障对第j个受影响业务造成的可用性损失百分比为UATPtoBusinessj=Sj×Pj/Ssum,上式中Ssum为整个季度的总秒数;
S6、以公式计算单次故障造成的网站可用性损失,上式中单次故障对第j个受影响业务造成的可用性损失为UATPtoBusinessSecondsj,第j个业务的权重为Wj,UATPtoSiteSecondsj为仅考虑第j个业务的情况下、单次故障对网站造成的可用性损失,UATPtoSiteSeconds为单次故障对网站造成的可用性损失;
以公式计算单次故障对网站造成的可用性损失百分比,其中UATPtoSite为单次故障对网站造成的可用性损失百分比,UATPtoSitej为仅考虑第j个业务的情况下单次故障对网站造成的可用性损失百分比,Wj为第j个业务的权重值,其中1≤j≤m,1≤m≤k;
S7、统计预设时间段中发生的所有对网站业务订单有影响的故障,累加每一个故障对网站造成的可用性损失百分比,以得到该预设时间段中网站的总可用性损失百分比;
S8、计算得到该预设时间段中网站的总可用性百分比,总可用性百分比和总可用性损失百分比之和等于1。
本实施例中,各个业务为酒店、机票、火车票、门票等的在线订单业务。该预设时间段为一整个季度。
以下举一应用实例,对本实施例的网站可用性的评估方法的实施过程进行说明。
本应用实例以计算某在线旅游网站在2014年Q4(第四季度)的网站可用性为目的。本应用实例的实施步骤说明如下。
第一步、采集业务历史订单详细数据并汇总。该在线旅游网站有酒店、机票、度假、商旅、火车票五大业务。这里,需要采集这些业务历史详细订单数据。一般来说,数据采集有独立的采集作业,帮助实现自动采集数据。目前的采集频率是一小时采集一次,按照增量采集。根据采集的数据按照分钟粒度和日粒度分布进行汇总,得到各业务的每日订单量和每分钟订单量。若初始汇总后一天中分钟数据少于1440点,则对缺少的点补零处理。
第二步、预测各业务订单。采取某种预测方法,根据历史订单数据得到业务在预测日期的分钟订单量预测值。这里,采用的是基于季节指数和日期对齐的方法来做预测。以预测2014-11-20日的酒店订单为例,该日是普通工作日,周四,取上周四2014-11-13日作为增长基础日期。查询历史对应日期的订单量(或修正订单量),得到酒店业务在历年同期的周同比增长率并赋权如下表1:
表1
名称 |
2010年 |
2011年 |
2012年 |
2013年 |
增长率 |
-2.2% |
0.7% |
0.9% |
-1.9% |
权重 |
1 |
2 |
3 |
4 |
进而,得到2014-11-20酒店业务日订单量相对增长基数日期日订单量(或修正值)的预测增长率为:-0.5%=(-2.2%×1+0.7%×2+0.9%×3+(-1.9%)×4)/(1+2+3+4)。取2014-11-13日的实际订单量(或考虑异常时间段后的修正值)作为增长基数,采用下述公式:预测日期订单量预测值=增长基数×(1+增长率预测值)。到此,便得到预测日期的日订单量预测值。
由于2014-11-20日是普通周四,可以选取四天周同比日期和四天日环比日期作为计算季节指数的基础日期。给这些日期赋予权重,通常同比日期的走势相似度较高,赋予略大的权重。另外,日期离预测日期越接近,相似度更高。所以,这里赋予四个周同比日期由远到近的权重为2、4、6、8,赋予四个日环比日期由远到近的权重为1、2、3、4。酒店业务在2014-11-20日季节指数预测值的对应相关日期和权重见下表2:
表2
业务名称 |
预测日期 |
相关日期 |
权重 |
类型 |
酒店 |
2014/11/20 |
2014/11/10 |
1 |
环比工作日 |
酒店 |
2014/11/20 |
2014/11/11 |
2 |
环比工作日 |
酒店 |
2014/11/20 |
2014/11/12 |
3 |
环比工作日 |
酒店 |
2014/11/20 |
2014/11/14 |
4 |
环比工作日 |
酒店 |
2014/11/20 |
2014/10/23 |
2 |
同比工作日 |
酒店 |
2014/11/20 |
2014/10/30 |
4 |
同比工作日 |
酒店 |
2014/11/20 |
2014/11/6 |
6 |
同比工作日 |
酒店 |
2014/11/20 |
2014/11/13 |
8 |
同比工作日 |
根据酒店在这些日期的实际季节指数,进行异常处理,然后进行10分钟平均的平滑处理。根据不同日期的权重,加权平均得到预测日期的季节指数预测值。根据下述公式,每分钟订单量预测值=预测日期的日订单量预测值×每分钟季节指数预测值,得到预测日期的每分钟订单量预测值。根据上述步骤,得到酒店业务在2014-11-20日的每分钟预测值和实际值对比(偏离度为0.8%)。
第三步、确定各业务权重。通过查询公司在网上公布的最近一个季度财报,可以查询各业务的营收情况。未公布财报的,可以根据上季度的订单量占比来确定权重。这里,得到该在线旅游网站有酒店、机票、度假、商旅、火车票五大业务的权重如下表3:
表3
业务名称 |
权重 |
商旅 |
4% |
机票 |
39% |
酒店 |
39% |
度假 |
16% |
火车票 |
2% |
第四步、计算单次故障对各业务订单的影响。在2014年Q4中出现了多个故障,这里以2014-10-09日晚上19:17-19:47的故障为例,该故障是由于Server首页登录失败,造成机票、酒店和商旅订单受到影响。根据业务订单实际值和预测值确定受影响业务的受影响时间如下表4:
表4
第五步、计算单次故障造成各业务可用性的损失。在这次故障中,酒店受影响时长为S=(47-09)×60=2280(s),故障影响期间期,酒店损失订单百分比为16.7%=(受影响期间期望订单总量-期间实际订单总量)/受影响期间期望订单总量。该次故障对酒店业务造成的可用性损失(时间)为:381=酒店受影响时长×受影响期间损失订单百分比=2280×16.7%。
对于整个第四季度而言,这次故障对酒店业务可用性造成的损失(百分比)为:0.004793%=可用性损失(时间)/该季度总时间秒数=381/(3600×24×92),同理,可以得到机票、商旅在本次故障中可用性受到的损失如下表5所示:
表5
第六步、计算单次故障造成网站可用性的损失。由于不同业务的权重不同,对不同业务可用性造成的相同时长的影响,对网站可用性的影响不一定相同。在这次故障中,就酒店业务而言,酒店可用性的损失造成网站可用性的损失(时间)秒数为:149=381×0.39,对网站季度可用性造成的损失百分比为:0.001869%=149/(3600×24×92)。同理,其他业务可用性的损失对网站可用性损失的贡献根据其权重可分别得到,该故障对各业务影响而产生的网站可用性损失如下表6:
表6
累和得到该次故障对网站造成可用性的损失秒数为289=36+104+149,该次故障对网站造成可用性的损失(百分比)为0.003634%=289/(3600×24×92)。
第七步、计算得到网站在整个季度的可用性损失。通过查询网站故障记录,发现在2014年Q4中共发生了19次对网站业务有影响的故障。累和它们对网站可用性造成的损失,得到该季度中所有故障对网站造成可用性的损失秒数为5380,该季度中所有故障对网站造成可用性的损失百分比为0.06768%。上面便得到了网站在这个季度中0.06768%的程度是不可用的,剩余部分表明对网站业务无影响,网站是可用的。
第八步、得到网站在整个季度的可用性。该季度中网站可用性(百分比)为:ATPtoSite=1-UATPtoSite。所以,在2014年Q4中,网站可用性为99.93232%=1-0.06768%。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。