专利名称:应用服务器性能检测方法及系统的制作方法
技术领域:
本申请涉及计算机网络数据处理技术领域,特别是涉及一种应用服务器性能检测方法及系统。
背景技术:
随着互联网用户的逐步攀升,特别是大型的购物网站、门户网站等网站的访问用户数量也越来越多,随着流量的增加,这也给网站应用服务器带来了越来越大的压力。因此,需要随时检测网站应用服务器的性能,保证其能稳定运行。目前,应用服务器的性能检测通常通过技术人员经验或者简单的测试系统来检测,主要方法为选取几个主要的指标,查看这些指标是否处于正常状态。例如,一种应用服务器的性能测试方法为,通过性能剖析器来分析各应用程序的响应时间及内存,从而实现性能测试。此种方式中,性能剖析器需要记录分析范围内的每个指令,这就会使所有指令的执行时间增加,降低分析效率。另外,此种通过选取性能指标然后简单判断该性能指标是否处于正常状态的方式来实现应用服务器的性能检测方法较为片面,容易出现较大的误差,无法对应用服务器给出及时准确的综合性能评估。
发明内容
本申请提供一种应用服务器性能检测方法及系统,以解决应用服务器性能检测的准确性和效率问题。为了解决上述问题,本申请公开了一种应用服务器性能检测方法,包括以下步骤:获取应用服务器各性能指标的实时测试数据;根据各性能指标的实时测试数据和预先设定的权重计算应用服务器的健康指数;根据健康指数确定应用服务器的实时性能状态;根据应用服务器的实时性能状态对应用服务器进行相应的处理,所述处理包括当应用服务器的实时性能状态在预定的正常范围外,生成告警信息。进一步地,所述根据健康指数确定应用服务器的实时性能状态包括:确定应用服务器的健康等级及各健康等级对应的取值区间;健康指数所属的取值区间对应的健康等级为应用服务器的实时性能状态。进一步地,所述应用服务器的健康指数通过下述方式确定:根据实时测试数据确定各性能指标的实时健康等级;根据各性能指标的实时健康等级及权重计算各性能指标的实时得分;加总各性能指标的实时得分得到应用服务器的健康指数。进一步地,所述应用服务器的健康指数通过下述方式确定:
根据实时测试数据确定各性能指标的实时健康等级;根据各性能指标的实时健康等级确定各性能指标的加权系数;根据确定的加权系数和各性能指标的权重计算各性能指标的实时得分;加总各性能指标的实时得分得到应用服务器的健康指数。进一步地,所述根据实时测试数据确定各性能指标的实时健康等级包括:确定各性能指标的健康等级及各健康等级对应的取值区间;实时测试数据所属的取值区间对应的健康等级为各性能指标的实时健康等级。进一步地,所述根据实时测试数据确定各性能指标的实时健康等级包括:确定各性能指标的性能基线、健康等级及各健康等级对应的取值区间;计算各性能指标的实时测试数据和对应的性能基线比值;所述比值所属的取值区间对应的健康等级为各性能指标的实时健康等级。为了解决上述问题,本申请还公开了一种应用服务器性能检测系统,包括:测试模块,用于获取应用服务器各性能指标的实时测试数据;健康指数计算模块,用于根据各性能指标的实时测试数据和预先设定的权重计算应用服务器的健康指数;实时性能状态确定模块,用于根据健康指数确定应用服务器的实时性能状态;处理模块,用于根据应用服务器的实时性能状态对应用服务器进行相应的处理。进一步地,所述实时性能状态确定模块包括:健康等级确定单元,用于确定应用服务器的健康等级及各健康等级对应的取值区间;状态确定单元,用于根据确定健康指数所属的取值区间对应的健康等级确定应用服务器的实时性能状态。进一步地,所述健康指数计算模块包括:实时健康等级确定单元,用于根据实时测试数据确定各性能指标的实时健康等级;实时得分计算单元,根据各性能指标的实时健康等级及权重计算各性能指标的实时得分,或根据各性能指标的实时健康等级确定的各性能指标的加权系数及权重计算各性能指标的实时得分;加总单元,用于加总各性能指标的实时得分得到应用服务器的健康指数。与现有技术相比,本申请包括以下优点:本申请的应用服务器性能检测方法及系统在计算应用服务器的健康指数时同时考虑各性能指标的实时测试数据和预先设定的权重,可以使应用服务器健康指数的计算结果更为客观和准确,而且在检测过程中只需要获取到实时测试数据和权重便可以快速得出实时性能状态,减少人为判断对检测结果准确性的影响。在检测出应用服务器的实时性能状态后给出对应的告警信息并返回实时检测数据,可以便于使用者了解其实时状态,并能及时的进行优化处理,保证应用服务器的稳定运行。另外,通过分析每一个应用服务器的历史数据或者理论数据来预先确定性能指标的性能基线,再将实时测试数据与性能基线比较的方式来进行性能检测,考虑了每个应用服务器的特性,从而使检测结果更加准确。
当然,实施本申请的任一方案不一定需要同时达到以上所述的所有优点。
图1是本申请的应用服务器性能检测方法实施例一的流程图;图2是本申请的根据实时测试数据确定各性能指标的实时健康等级的流程图;图3是本申请的应用服务器性能检测系统实施例一的结构示意图。
具体实施例方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本申请作进一步详细的说明。参照图1,示出本申请的一种应用服务器性能检测方法实施例,包括以下步骤:步骤101,获取应用服务器各性能指标的实时测试数据。应用服务器性能指标包括能够体现应用服务器综合性能的多维指标,可以根据应用服务器的实际情况来选取。为了保证性能检测的准确性,可以尽可能多的选取多种维度的性能指标。例如,响应时间、TPS (Transaction Per Second,每秒事务处理量)、FGC、CPU (Central Processing Unit,中央处理器)等性能指标。步骤102,根据各性能指标的实时测试数据和预先设定的权重计算应用服务器的健康指数。其中,可以预先设定应用服务器健康指数的计算公式,例如,将每一个性能指标的实时测试数据与对应的权重相乘,再将所有数据相加。又或者,划定各性能指标在不同状态下的取值范围,每个取值范围对应一个加权系数,当某一性能指标的实时测试数据落入某一取值范围内,则将该加权系数与对应的权重相乘,最后将所有数据相加,等等。本申请对此并不限制。采用加权系数的方式,可以预先计算出每种状态下各性能指标的得分,当实时测试数据落入对应状态的取值范围内时,则可以直接获取该状态下的得分,从而快速的给出
计算结果。预先设定的权重可以根据各性能指标对于应用服务器的稳定运行的贡献来设定,其对应用服务器的稳定运行的贡献越大,则其权重也越大。权重设定的依据可以是应用服务器的历史运行数据。例如,通过获取应用服务器稳定运行并提供性能支撑时的各性能指标的测试值,分析各性能指标对于应用服务器稳定运行的重要程度,从而确定性能指标的权重。在计算应用服务器的健康指数时同时考虑各性能指标的实时测试数据和预先设定的权重,可以使应用服务器健康指数的计算结果更为客观和准确。优选地,为了使结果更为直观,可以预先设定各性能指标的健康等级表示性能指标的不同状态,且每一个健康等级对应一个取值区间,当各性能指标的实时测试数据落入某一取值区间时,则确定该取值区间对应的健康等级为各性能指标的实时健康等级。同样的,在计算时,可以为各性能指标的每一个健康等级设定一个加权系数,当性能指标的实时测试数据落入某一健康等级时,则直接取出该加权系数结合权重进行计算。其中,性能指标的健康等级通过已有理论数据或者对实际数据统计分析确定,例如,根据应用服务器各性能指标的理论数据确定或者根据应用服务器各性能指标的历史检测数据分析确定。优选地,根据实时测试数据确定各性能指标的实时健康等级时,除了考虑性能指标的实时测试数据,还可以通过与各性能指标的基线数据结合的方式来判断该性能指标的实时健康等级,例如,计算实时测试数据与基线数据的比值等方式。通过引入基线数据,可以保证确定的等级具有更闻的准确性。具体的,参照图2,根据实时测试数据确定各性能指标的实时健康等级可以通过以下步骤实现:步骤201,确定所述应用服务器各性能指标的性能基线。性能基线为各性能指标的基准值,即在性能测试环境里通过测试某产品、项目、日常、应用、回归基线得出的具备高度参考性的各性能指标的性能测试结果集。例如,过去一周内某一应用服务器各性能指标的真实测试结果,并根据这些真实测试结果分析确定各性能指标的性能基线。步骤202,计算各性能指标的实时测试数据和对应的性能基线比值。步骤203,所述比值所属的取值区间对应的健康等级为各性能指标的实时健康等级。若比值范围在某一健康等级所对应的取值区间内,则确定该性能指标的实时健康等级为该健康等级。例如,对于某一性能指标来说,其性能基线为60,健康等级共分为健康、亚健康和危险三类,分别对应的数值范围为<50%,50%-60%和>60%。若实时测试数据为25,那么可以确定其与性能基线的比值为5/12,小于50%,则其实时健康等级为健康。若实时测试数据为35时,则会落到亚健康区间,当实时测试数据为为50时,则落到危险区间。步骤103,根据健康指数确定应用服务器的实时性能状态。实时性能状态可以根据实际需要来划分,例如,以健康等级划分的健康、亚健康和危险来表示不同的性能状态,当然,可以进行更细的划分,本申请对此并不限制。在划分出不同的性能状态后,还需要为每一个性能状态确定对应的取值范围,若健康指数落入某一取值范围,则该取值范围对应的性能状态则为该应用服务器的实时性能状态。步骤104,根据应用服务器的实时性能状态对应用服务器进行相应的处理,所述处理包括当应用服务器的实时性能状态在预定的正常范围外,生成告警信息。进一步地,告警信息可以根据应用服务器的具体健康等级的不同而不同,从而能够便于选取合适的优化方式。例如,假设预定的应用服务器的健康等级分为健康、亚健康和危险三种,其中,健康为预定的正常状态,亚健康和危险都设定为非正常状态。若应用服务器的实时健康等级为亚健康,则给出性能预警,并进行优化,若应用服务器的实时健康等级为危险,则给出紧急告警,并进行优化。进一步地,本申请的方法还包括对返回各应用服务器的实时检测数据并进行展示,从而便于使用者了解其实时状况及对其进行优化处理。下面结合具体的实例对前述方法实施例进行详细的说明。假设确定的性能指标包括 TPS(Transaction Per Second,每秒事务数)、RT(Response Time,响应时间)、JVM(Java Virtual Machine, JAVA 虚拟机)、FGC(Full Garbage Collection,全量垃圾回收)、FGCT(Full Garbage Collection Time,全量垃圾回收时间)、CPU、Load(负载)及 I/Owait (输入输出等待时间)。各性能指标的等级分为健康、亚健康及危险三个等级。根据实践经验确定的各性能指标的权重可以分为3类,一类为TPS、RT,二类为JVM、FGC、CPU、Load,三类为FGCT、1/0,所占权重分别划分为20%,15%,5% 10%。具体的各性能指标的基线、权重及各等级对应的数值区间分别如表I所示:表I
权利要求
1.一种应用服务器性能检测方法,其特征在于,包括以下步骤: 获取应用服务器各性能指标的实时测试数据; 根据各性能指标的实时测试数据和预先设定的权重计算应用服务器的健康指数; 根据健康指数确定应用服务器的实时性能状态; 根据应用服务器的实时性能状态对应用服务器进行相应的处理,所述处理包括当应用服务器的实时性能状态在预定的正常范围外,生成告警信息。
2.如权利要求1所述的应用服务器性能检测方法,其特征在于,所述根据健康指数确定应用服务器的实时性能状态包括: 确定应用服务器的健康等级及各健康等级对应的取值区间; 健康指数所属的取值区间对应的健康等级为应用服务器的实时性能状态。
3.如权利要求1所述的应用服务器性能检测方法,其特征在于,所述应用服务器的健康指数通过下述方式确定: 根据实时测试数据确定各性能指标的实时健康等级; 根据各性能指标的实时健康等级及权重计算各性能指标的实时得分; 加总各性能指标的实时得分得到应用服务器的健康指数。
4.如权利要求1所述的应用服务器性能检测方法,其特征在于,所述应用服务器的健康指数通过下述方式确定: 根据实时测试数据确定各性能指标的实时健康等级; 根据各性能指标的实时健康等级确定各性能指标的加权系数; 根据确定的加权系数和各性能指标的权重计算各性能指标的实时得分; 加总各性能指标的实时得分得到应用服务器的健康指数。
5.如权利要求3或4所述的应用服务器性能检测方法,其特征在于,所述根据实时测试数据确定各性能指标的实时健康等级包括: 确定各性能指标的健康等级及各健康等级对应的取值区间; 实时测试数据所属的取值区间对应的健康等级为各性能指标的实时健康等级。
6.如权利要求3或4所述的应用服务器性能检测方法,其特征在于,所述根据实时测试数据确定各性能指标的实时健康等级包括: 确定各性能指标的性能基线、健康等级及各健康等级对应的取值区间; 计算各性能指标的实时测试数据和对应的性能基线比值; 所述比值所属的取值区间对应的健康等级为各性能指标的实时健康等级。
7.一种应用服务器性能检测系统,其特征在于,包括: 测试模块,用于获取应用服务器各性能指标的实时测试数据; 健康指数计算模块,用于根据各性能指标的实时测试数据和预先设定的权重计算应用服务器的健康指数; 实时性能状态确定模块,用于根据健康指数确定应用服务器的实时性能状态; 处理模块,用于根据应用服务器的实时性能状态对应用服务器进行相应的处理。
8.如权利要求7所述的应用服务器性能检测系统,其特征在于,所述实时性能状态确定模块包括: 健康等级确定单元,用于确定应用服务器的健康等级及各健康等级对应的取值区间;状态确定单元,用于根据确定健康指数所属的取值区间对应的健康等级确定应用服务器的实时性能状态。
9.如权利要求7所述的应用服务器性能检测系统,其特征在于,所述健康指数计算模块包括: 实时健康等级确定单元,用于根据实时测试数据确定各性能指标的实时健康等级;实时得分计算单元,根据各性能指标的实时健康等级及权重计算各性能指标的实时得分,或根据各性能指标的实时健康等级确定的各性能指标的加权系数及权重计算各性能指标的实时得分; 加总单元,用于加总各性能指标的实时得分得到应用服务器的健康指数。
全文摘要
本申请提供了一种应用服务器性能检测方法,包括以下步骤获取应用服务器各性能指标的实时测试数据;根据各性能指标的实时测试数据和预先设定的权重计算应用服务器的健康指数;根据健康指数确定应用服务器的实时性能状态;根据应用服务器的实时性能状态对应用服务器进行相应的处理,所述处理包括当应用服务器的实时性能状态在预定的正常范围外,生成告警信息。本申请还提供一种实现前述方法的应用服务器性能检测系统。本申请的应用服务器性能检测方法及系统,性能检测的准确性和效率较高。
文档编号H04L12/26GK103139007SQ20111040033
公开日2013年6月5日 申请日期2011年12月5日 优先权日2011年12月5日
发明者王德山 申请人:阿里巴巴集团控股有限公司