分布式应用系统性能的监控方法、装置、存储介质及设备与流程

文档序号:11205844阅读:1515来源:国知局
分布式应用系统性能的监控方法、装置、存储介质及设备与流程

本公开涉及应用性能管理领域,尤其涉及一种分布式应用系统性能的监控方法、装置、存储介质及设备。



背景技术:

应用性能是反映应用面向用户提供服务质量的关键指标,应用性能的风险可能直接导致用户体验下降,甚至服务中断。应用性能管理(applicationperformancemanagement,简称apm)作为一个比较新的网络管理方向,主要指对企业的关键业务应用进行监测、优化,提高企业应用的可靠性和质量,保证用户得到良好的服务,降低it总拥有成本(totalcostofownership,简称tco)。近年来,新技术、新需求的涌现促使企业拥有的应用数量和应用复杂度快速膨胀,使得企业应用运维不堪重负。由于应用性能问题导致企业客户流失和经济损失的案例也逐渐增加,传统的应用性能管理的单应用节点监控、分析机制已难以应对。现有应用性能管理中的应用性能监控系统主要包括单应用节点监控与分布式应用监控。其中,单应用节点监控系统强调单应用监控的实时性,虽然可以获知每一个应用的性能情况,但是无法获知分布式应用系统的整体性能情况。



技术实现要素:

为克服相关技术中存在的问题,本公开提供一种分布式应用系统性能的监控方法、装置、存储介质及设备。

根据本公开实施例的第一方面,提供一种分布式应用系统的性能监控方法,所述方法包括:

利用在目标分布式应用系统的每个应用中植入的监控探针,对所述每个应用的网络事务的指定指标进行监控,得到所述每个应用的监控数据;

根据所述每个应用的监控数据确定所述每个应用的应用性能指数;

根据所述目标分布式应用系统内的所有应用的监控数据确定所述目标分布式应用系统的应用性能指数;

根据所述每个应用的应用性能指数和所述分布式应用系统的应用性能指数分别获取所述每个应用的性能分析结果以及所述目标分布式应用系统的性能分析结果。

可选的,所述方法还包括:

根据所述每个应用的所述监控数据获取产生所述网络事务的所述每个用户的监控数据;

根据所述每个用户的监控数据确定所述每个用户的应用性能指数;

根据所述每个用户的应用性能指数获取所述每个用户的用户体验质量分析结果。

可选的,所述利用在分布式应用系统内的每个应用中植入的监控探针,对所述每个应用的网络事务的指定指标进行监控,得到所述每个应用的监控数据,包括:

根据所述目标分布式应用系统的id确定属于所述目标分布式应用系统的每个应用;

利用在属于所述目标分布式应用系统的每个应用中植入的监控探针,对所述每个应用的网络事务的指定指标进行监控;

将所述每个应用中植入的监控探针采集的数据存储为所述每个应用的监控数据。

可选的,所述根据所述每个应用的监控数据确定所述每个应用的应用性能指数,包括:

根据第一应用的监控数据获取所述第一应用的关于所述网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,所述第一应用为所述目标分布式应用系的所有应用中的任一应用,所述满意请求为响应时间小于第一时间阈值的网络事务请求,所述可容忍请求为响应时间小于第二时间阈值的网络事务请求,所述第一时间阈值小于所述第二时间阈值,所述请求总数为所述第一应用接收到的网络事务请求的总数;

根据所述第一应用的所述满意请求的数量、所述可容忍请求的数量以及所述请求总数确定所述第一应用的应用性能指数。

可选的,所述根据所述目标分布式应用系统内的所有应用的监控数据确定所述目标分布式应用系统的应用性能指数,包括:

根据所述目标分布式应用系统内的所有应用的监控数据获取所述目标分布式应用系统的关于所述网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,所述满意请求为响应时间小于第一时间阈值的网络事务请求,所述可容忍请求为响应时间小于第二时间阈值的网络事务请求,所述第一时间阈值小于所述第二时间阈值,所述请求总数为所述目标分布式应用系统接收到的网络事务请求的总数;

根据所述目标分布式应用系统的所述满意请求的数量、所述可容忍请求的数量以及所述请求总数确定所述目标分布式应用系统的应用性能指数。

可选的,所述根据所述每个应用的应用性能指数和所述分布式应用系统的应用性能指数分别获取所述每个应用的性能分析结果以及所述目标分布式应用系统的性能分析结果,包括:

根据所述目标分布式应用系统的应用性能指数与应用性能指数满分的接近程度获取所述目标分布式应用系统的应用性能的分析结果,其中,所述目标分布式应用系统的应用性能指数与应用性能指数满分的差值越小,表示所述目标分布式应用系统的应用性能越高;以及,

根据所述每个应用的应用性能指数确定所述目标分布式应用系统的所有应用中应用性能指数最小的应用;

将所述应用性能指数最小的应用确定为所述目标分布式应用系统中的性能瓶颈节点;或者,

根据所述每个应用的应用性能指数获取所述每个应用的应用性能指数的标准偏差;

将所有应用中应用性能指数的标准偏差最大的应用确定为所述目标分布式应用系统中的性能瓶颈节点。

可选的,所述根据所述每个用户的监控数据确定所述每个用户的应用性能指数,包括:

根据第一用户的监控数据获取所述第一用户的关于所述网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,所述第一用户为所述目标分布式应用系的所有用户中的任一用户,所述满意请求为响应时间小于第一时间阈值的网络事务请求,所述可容忍请求为响应时间小于第二时间阈值的网络事务请求,所述第一时间阈值小于所述第二时间阈值,所述请求总数为所述第一用户发起的网络事务请求的总数;

根据所述第一用户的所述满意请求的数量、所述可容忍请求的数量以及所述请求总数确定所述第一用户的应用性能指数。

可选的,所述根据所述每个用户的应用性能指数获取所述每个用户的用户体验质量分析结果,包括:

根据所述每个用户的应用性能指数与应用性能指数满分的接近程度获取所述每个用户的用户体验质量的分析结果,其中,所述每个用户的应用性能指数与应用性能指数满分的差值越小,表示用户的用户体验质量越高;或者,

根据所述每个用户的应用性能指数获取所述每个用户的应用性能指数的标准偏差;

将所有用户中应用性能指数的标准偏差最大的用户确定为所述目标分布式应用系统中的用户体验质量最低的用户。

可选的,所述根据所述目标分布式应用系统的id确定属于所述目标分布式应用系统的每个应用,包括:

读取所有监控探针的配置文件,所述配置文件中包括监控探针所植入的应用的id和所属分布式应用系统的id;

根据所述目标分布式应用系统的id查找目标监控探针,所述目标监控探针为配置文件中记录的所属分布式应用系统的id与所述目标分布式应用系统的id匹配的监控探针;

将所述目标监控探针所植入的应用确定为确定属于所述目标分布式应用系统的应用。

可选的,所述根据所述目标分布式应用系统的id确定属于所述目标分布式应用系统的每个应用,包括:

根据所述目标分布式应用系统的id确定所述目标分布式应用系统对应的应用名称;

根据所述应用名称确定属于所述目标分布式应用系统的每个应用。

可选的,所述方法还包括:

将所述每个应用的性能分析结果,所述目标分布式应用系统的性能分析结果,以及所述每个用户的用户体验质量分析结果中的至少一者以可视化方式进行输出。

根据本公开实施例的第二方面,提供一种分布式应用系统的性能监控装置,所述装置包括:

数据采集模块,用于利用在目标分布式应用系统的每个应用中植入的监控探针,对所述每个应用的网络事务的指定指标进行监控,得到所述每个应用的监控数据;

单应用性能指数确定模块,用于根据所述每个应用的监控数据确定所述每个应用的应用性能指数;

系统性能指数确定模块,用于根据所述目标分布式应用系统内的所有应用的监控数据确定所述目标分布式应用系统的应用性能指数;

系统性能获取模块,用于根据所述每个应用的应用性能指数和所述分布式应用系统的应用性能指数分别获取所述每个应用的性能分析结果以及所述目标分布式应用系统的性能分析结果。

可选的,所述装置还包括:用户性能指数确定模块;

所述数据采集模块,还用于根据所述每个应用的所述监控数据获取产生所述网络事务的所述每个用户的监控数据;

所述用户性能指数确定模块,用于根据所述每个用户的监控数据确定所述每个用户的应用性能指数;

所述系统性能获取模块,还用于根据所述每个用户的应用性能指数获取所述每个用户的用户体验质量分析结果。

可选的,所述数据采集模块,包括:

应用确定子模块,用于根据所述目标分布式应用系统的id确定属于所述目标分布式应用系统的每个应用;

指标监控子模块,用于利用在属于所述目标分布式应用系统的每个应用中植入的监控探针,对所述每个应用的网络事务的指定指标进行监控;

数据存储子模块,用于将所述每个应用中植入的监控探针采集的数据存储为所述每个应用的监控数据。

可选的,所述单应用性能指数确定模块,包括:

单应用请求数获取子模块,用于根据第一应用的监控数据获取所述第一应用的关于所述网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,所述第一应用为所述目标分布式应用系的所有应用中的任一应用,所述满意请求为响应时间小于第一时间阈值的网络事务请求,所述可容忍请求为响应时间小于第二时间阈值的网络事务请求,所述第一时间阈值小于所述第二时间阈值,所述请求总数为所述第一应用接收到的网络事务请求的总数;

单应用性能指数确定子模块,用于根据所述第一应用的所述满意请求的数量、所述可容忍请求的数量以及所述请求总数确定所述第一应用的应用性能指数。

可选的,所述系统性能指数确定模块,包括:

全应用请求数获取子模块,用于根据所述目标分布式应用系统内的所有应用的监控数据获取所述目标分布式应用系统的关于所述网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,所述满意请求为响应时间小于第一时间阈值的网络事务请求,所述可容忍请求为响应时间小于第二时间阈值的网络事务请求,所述第一时间阈值小于所述第二时间阈值,所述请求总数为所述目标分布式应用系统接收到的网络事务请求的总数;

系统性能指数确定子模块,用于根据所述目标分布式应用系统的所述满意请求的数量、所述可容忍请求的数量以及所述请求总数确定所述目标分布式应用系统的应用性能指数。

可选的,所述系统性能获取模块,用于:

根据所述目标分布式应用系统的应用性能指数与应用性能指数满分的接近程度获取所述目标分布式应用系统的应用性能的分析结果,其中,所述目标分布式应用系统的应用性能指数与应用性能指数满分的差值越小,表示所述目标分布式应用系统的应用性能越高;以及,

根据所述每个应用的应用性能指数确定所述目标分布式应用系统的所有应用中应用性能指数最小的应用;

将所述应用性能指数最小的应用确定为所述目标分布式应用系统中的性能瓶颈节点;或者,

根据所述每个应用的应用性能指数获取所述每个应用的应用性能指数的标准偏差;

将所有应用中应用性能指数的标准偏差最大的应用确定为所述目标分布式应用系统中的性能瓶颈节点。

可选的,所述用户性能指数确定模块,包括:

用户请求数获取子模块,用于根据第一用户的监控数据获取所述第一用户的关于所述网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,所述第一用户为所述目标分布式应用系的所有用户中的任一用户,所述满意请求为响应时间小于第一时间阈值的网络事务请求,所述可容忍请求为响应时间小于第二时间阈值的网络事务请求,所述第一时间阈值小于所述第二时间阈值,所述请求总数为所述第一用户发起的网络事务请求的总数;

用户性能指数确定子模块,用于根据所述第一用户的所述满意请求的数量、所述可容忍请求的数量以及所述请求总数确定所述第一用户的应用性能指数。

可选的,所述系统性能获取模块,用于:

根据所述每个用户的应用性能指数与应用性能指数满分的接近程度获取所述每个用户的用户体验质量的分析结果,其中,所述每个用户的应用性能指数与应用性能指数满分的差值越小,表示用户的用户体验质量越高;或者,

根据所述每个用户的应用性能指数获取所述每个用户的应用性能指数的标准偏差;

将所有用户中应用性能指数的标准偏差最大的用户确定为所述目标分布式应用系统中的用户体验质量最低的用户。

可选的,所述应用确定子模块,用于:

读取所有监控探针的配置文件,所述配置文件中包括监控探针所植入的应用的id和所属分布式应用系统的id;

根据所述目标分布式应用系统的id查找目标监控探针,所述目标监控探针为配置文件中记录的所属分布式应用系统的id与所述目标分布式应用系统的id匹配的监控探针;

将所述目标监控探针所植入的应用确定为确定属于所述目标分布式应用系统的应用。

可选的,所述应用确定子模块,用于:

根据所述目标分布式应用系统的id确定所述目标分布式应用系统对应的应用名称;

根据所述应用名称确定属于所述目标分布式应用系统的每个应用。

可选的,所述装置还包括:

可视化输出模块,用于将所述每个应用的性能分析结果,所述目标分布式应用系统的性能分析结果,以及所述每个用户的用户体验质量分析结果中的至少一者以可视化方式进行输出。

第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述方法的步骤。

第四方面,提供一种电子设备,包括:

第三方面中所述的计算机可读存储介质;以及一个或者多个处理器,用于执行所述计算机可读存储介质中的计算机程序。

本公开的提供的分布式应用系统性能的监控方法、装置、存储介质及设备,通过利用在目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控,进而得到每个应用的监控数据,根据每个应用的监控数据确定每个应用的应用性能指数、目标分布式应用系统的应用性能指数,根据每个应用的应用性能指数、目标分布式应用系统的应用性能指数分别获取每个应用的性能分析结果、目标分布式应用系统的性能分析结果。既能够对单应用的应用性能进行评估,也可以根据整个目标分布式应用系统中所有的单应用的应用性能来确定整个目标分布式应用系统的性能瓶颈,还能够对整个目标分布式应用系统的应用性能进行评估,因此能够解决无法获知分布式应用系统的整体性能情况的问题,能够加强分布式应用运维的深度和针对性,简化运维工作的复杂度。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1是根据一示例性实施例示出的一种分布式应用系统的性能监控方法的流程图;

图2是根据另一示例性实施例示出的一种分布式应用系统的性能监控方法的流程图;

图3是根据一示例性实施例示出的一种分布式应用系统的监控数据采集方法的流程图;

图4是根据一示例性实施例示出的一种单应用性能指数确定方法的流程图;

图5是根据一示例性实施例示出的一种分布式系统性能指数确定方法的流程图;

图6是根据一示例性实施例示出的一种用户应用性能指数确定方法的流程图;

图7是根据又一示例性实施例示出的一种分布式应用系统的性能监控方法的流程图;

图8是根据一示例性实施例示出的一种分布式应用系统的性能监控装置的框图;

图9是根据另一示例性实施例示出的一种分布式应用系统的性能监控装置的框图;

图10是根据图8所示实施例示出的一种数据采集模块的框图;

图11是根据图8所示实施例示出的一种单应用性能指数确定模块的框图;

图12是根据图8所示实施例示出的一种系统性能指数确定模块的框图;

图13是根据图9所示实施例示出的一种用户应用性能指数确定模块的框图;

图14是根据又一示例性实施例示出的一种分布式应用系统的性能监控装置的框图;

图15是根据一示例性实施例示出的一种电子设备的框图;

图16是根据一示例性实施例示出的另一种电子设备的框图。

具体实施方式

以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

图1是根据一示例性实施例示出的一种分布式应用系统的性能监控方法的流程图,参见图1,该分布式应用系统的性能监控方法可以包括以下步骤:

在步骤101中,利用在目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控,得到每个应用的监控数据。

其中,一个分布式应用系统中可以包含多个应用,在本实施例中,可以认为一个分布式应用系统为包括了多个相关应用的集群。在实际应用中,一个系统中也可以包括多个分布式应用系统,本实施例以对一个分布式应用系统进行性能监控的方法为例进行说明。

另外,该监控数据可以为对每个应用的网络(web)事物相关的请求进行监控产生的数据,可以包括每个应用接收的每个网络事物请求的数量、每个网络事物请求的响应时间,每个网络事物请求所属用户的用户id等等。针对该监控数据,可以面向第三方监控系统提供对该监控数据访问的接口及接入服务,以便于该第三方监控系统获取该监控数据,进行进一步的分析。

在步骤102中,根据每个应用的监控数据确定每个应用的应用性能指数。

示例地,可以通过系统提供的面向第三方监控系统的对该监控数据访问的接口及接入服务获取该监控数据。从而可以根据每个应用的监控数据获取每个应用的满意请求数、可容忍请求数以及请求总数,本实施例中满意请求为响应时间小于第一时间阈值的网络事务请求,可容忍请求为响应时间小于第二时间阈值的网络事务请求,第一时间阈值小于所述第二时间阈值,示例的。本公开各个实施例中,第一时间阈值可以为3秒,第二时间阈值可以为5秒。

其中,应用性能指数(applicationperformanceindex,简称apdex)是一个国际通用标准,用于提供一个统一的用于衡量应用性能的参数,因此本公开通过应用性能指数,能够把用户体验的质量、系统性能的高低、应用性能的高低进行量化,便于对单个应用的性能、整个分布式应用系统的性能以及用户体验进行评估。应用性能指数可以通过以下公式(1)进行计算:apdex=(a×满意请求数+b×可容忍请求数)÷请求总数(1)

其中,apdex指应用性能指数,a可以为1,b可以为0.5,在计算单个应用的应用性能指数时,满意请求数是指该应用接收到的所有网络事务请求中的满意请求,可容忍请求数是指该应用接收到的所有网络事务请求中的可容忍请求,请求总数为该应用接收到的所有网络事务请求的总数。

在步骤103中,根据目标分布式应用系统内的所有应用的监控数据确定该目标分布式应用系统的应用性能指数。

同样的,在步骤103中可以通过公式(1)对该目标分布式应用系统的应用性能指数进行计算,其中,在整个目标分布式应用系统的应用性能指数时,满意请求数是指该目标分布式应用系统接收到的所有网络事务请求中的满意请求,可容忍请求数是指该目标分布式应用系统的所有网络事务请求中的可容忍请求,请求总数为该目标分布式应用系统接收到的所有网络事务请求的总数。

在步骤104中,根据每个应用的应用性能指数和分布式应用系统的应用性能指数分别获取每个应用的性能分析结果以及目标分布式应用系统的性能分析结果。

当根据该分布式应用系统的应用性能指数获取该目标分布式应用系统的性能分析结果时,可以根据该目标分布式应用系统的应用性能指数与应用性能指数满分的接近程度获取该目标分布式应用系统的应用性能的分析结果,其中,该应用性能指数满分可以为1,该目标分布式应用系统的应用性能指数越接近1,表示该目标分布式应用系统的应用性能越高。

当根据每个应用的应用性能指数获取每个应用的性能分析结果时,可以根据每个应用的应用性能指数确定该目标分布式应用系统的所有应用中应用性能指数最小的应用;将该应用性能指数最小的应用确定为该目标分布式应用系统中的性能瓶颈节点;或者,根据每个应用的应用性能指数获取每个应用的应用性能指数的标准偏差;将所有应用中应用性能指数的标准偏差最大的应用确定为该目标分布式应用系统中的性能瓶颈节点。

综上所述,本公开提供的分布式应用系统的性能监控方法,通过利用在目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控,进而得到每个应用的监控数据,根据每个应用的监控数据确定每个应用的应用性能指数、目标分布式应用系统的应用性能指数,根据每个应用的应用性能指数、目标分布式应用系统的应用性能指数分别获取每个应用的性能分析结果、目标分布式应用系统的性能分析结果。既能够对单应用的应用性能进行评估,也可以根据整个目标分布式应用系统中所有的单应用的应用性能来确定整个目标分布式应用系统的性能瓶颈,还能够对整个目标分布式应用系统的应用性能进行评估,因此能够解决无法获知分布式应用系统的整体性能情况的问题,能够加强分布式应用运维的深度和针对性,简化运维工作的复杂度。

图2是根据另一示例性实施例示出的一种分布式应用系统的性能监控方法的流程图,如图2所示,该分布式应用系统的性能监控方法还可以包括以下步骤。

在步骤105中,根据每个应用的该监控数据获取产生该网络事务的每个用户的监控数据。

示例地,在目标分布式应用系统的每个应用中植入的监控探针中记录产生网络事务的每个用户的id,并根据每个用户id生成每个用户使用各个应用的监控数据。例如,记录每个网络事务请求的发起用户的用户id,从而可以获取每个用户发起的网络事务请求的总数、每个用户的每个网络事务请求的响应时间等等。

在步骤106中,根据每个用户的监控数据确定每个用户的应用性能指数。

示例地,根据每个用户的监控数据可以获取每个用户的关于网络事务的满意请求的数量、可容忍请求的数量以及请求总数,从而可以利用上述的公式(1)计算每个用户的应用性能指数,其中用户的应用性能指数确定方法与步骤102中的应用性能指数确定方法可参照步骤102,不再赘述。

在步骤107中,根据每个用户的应用性能指数获取每个用户的用户体验质量分析结果。

其中,该步骤107可以包括:根据每个用户的应用性能指数与应用性能指数满分的接近程度获取每个用户的用户体验质量的分析结果,其中,应用性能指数满分可以为1,每个用户的应用性能指数越接近1,表示该用户的用户体验质量越高;或者,根据每个用户的应用性能指数获取每个用户的应用性能指数的标准偏差;将所有用户中应用性能指数的标准偏差最大的用户确定为该目标分布式应用系统中的用户体验质量最低的用户。

图3是根据一示例性实施例示出的一种分布式应用系统的监控数据采集方法的流程图,如图3所示,该步骤101可以包括以下步骤。

在步骤1011中,根据该目标分布式应用系统的id确定属于该目标分布式应用系统的每个应用。

当根据该目标分布式应用系统的id查找目标监控探针时,该步骤1011可以包括:首先,读取所有监控探针的配置文件,该配置文件中包括监控探针所植入的应用的id和所属分布式应用系统的id;其次,根据该目标分布式应用系统的id查找目标监控探针,该目标监控探针为配置文件中记录的所述分布式应用系统的id与该目标分布式应用系统的id匹配的监控探针;最后,将该目标监控探针所植入的应用确定为确定属于该目标分布式应用系统的应用。

当根据该目标分布式应用系统的id对应的应用名称查找目标监控探针时,该步骤1011可以包括:首先,根据该目标分布式应用系统的id确定该目标分布式应用系统对应的应用名称;其次,根据该应用名称确定属于该目标分布式应用系统的每个应用。

在步骤1012中,利用在属于该目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控。

在步骤1013中,将每个应用中植入的监控探针采集的数据存储为每个应用的监控数据。

图4是根据一示例性实施例示出的一种单应用性能指数确定方法的流程图,如图4所示,该步骤102可以包括以下步骤。

在步骤1021中,根据第一应用的监控数据获取该第一应用的关于该网络事务的满意请求的数量、可容忍请求的数量以及请求总数。

其中,该第一应用为该目标分布式应用系的所有应用中的任一应用,该满意请求为响应时间小于第一时间阈值的网络事务请求,该可容忍请求为响应时间小于第二时间阈值的网络事务请求,该第一时间阈值小于该第二时间阈值,该请求总数为该第一应用接收到的网络事务请求的总数。

在步骤1022中,根据该第一应用的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该第一应用的应用性能指数。

其中,根据该第一应用的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该第一应用的应用性能指数可以利用如步骤102中所示的公式(1)进行计算,不再赘述。

图5是根据一示例性实施例示出的一种分布式系统性能指数确定方法的流程图,参见图5,该步骤103可以包括以下步骤:

在步骤1031中,根据该目标分布式应用系统内的所有应用的监控数据获取该目标分布式应用系统的关于该网络事务的满意请求的数量、可容忍请求的数量以及请求总数。

其中,该满意请求为响应时间小于第一时间阈值的网络事务请求,该可容忍请求为响应时间小于第二时间阈值的网络事务请求,该第一时间阈值小于该第二时间阈值,该请求总数为该目标分布式应用系统接收到的网络事务请求的总数。

在步骤1032中,根据该目标分布式应用系统的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该目标分布式应用系统的应用性能指数。

其中,根据该目标分布式应用系统的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该目标分布式应用系统的应用性能指数可以利用如步骤102中所示的公式(1)进行计算,不再赘述。

图6是根据一示例性实施例示出的一种用户应用性能指数确定方法的流程图,如图6所示,该步骤106可以包括以下步骤。

在步骤1061中,根据第一用户的监控数据获取该第一用户的关于该网络事务的满意请求的数量、可容忍请求的数量以及请求总数。

其中,该第一用户为该目标分布式应用系的所有用户中的任一用户,该满意请求为响应时间小于第一时间阈值的网络事务请求,该可容忍请求为响应时间小于第二时间阈值的网络事务请求,该第一时间阈值小于该第二时间阈值,该请求总数为该第一用户发起的网络事务请求的总数。

在步骤1062中,根据该第一用户的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该第一用户的应用性能指数。

其中,根据该第一用户的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该第一用户的应用性能指数可以利用如步骤102中所示的公式(1)进行计算,不再赘述。

图7是根据又一示例性实施例示出的一种分布式应用系统的性能监控方法的流程图,如图7所示,该分布式应用系统的性能监控方法还包括以下步骤。

在步骤108中,将每个应用的性能分析结果,该目标分布式应用系统的性能分析结果,以及每个用户的用户体验质量分析结果中的至少一者以可视化方式进行输出。

综上所述,本公开提供的分布式应用系统的性能监控方法,通过利用在目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控,进而得到每个应用的监控数据,根据每个应用的监控数据确定每个应用的应用性能指数、目标分布式应用系统的应用性能指数以及每个用户的应用性能指数,从而根据每个应用的应用性能指数、目标分布式应用系统的应用性能指数、以及每个用户的应用性能指数可以分别获取每个应用的性能分析结果、目标分布式应用系统的性能分析结果以及每个用户的用户体验质量的分析结果。既能够对单应用的应用性能进行评估,也可以根据整个目标分布式应用系统中所有的单应用的应用性能来确定整个目标分布式应用系统的性能瓶颈,还能够对整个目标分布式应用系统的应用性能进行评估,同时还可以对每个用户的用户体验质量进行评估,因此能够解决无法获知分布式应用系统的整体性能情况的问题,能够加强分布式应用运维的深度和针对性,简化运维工作的复杂度。

图8是根据一示例性实施例示出的一种分布式应用系统的性能监控装置的框图,该分布式应用系统的性能监控装置800可以用于执行图1所述的方法。参见图8,该分布式应用系统的性能监控装置800可以包括:

数据采集模块810,用于利用在目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控,得到每个应用的监控数据;

单应用性能指数确定模块820,用于根据每个应用的监控数据确定每个应用的应用性能指数;

系统性能指数确定模块830,用于根据该目标分布式应用系统内的所有应用的监控数据确定该目标分布式应用系统的应用性能指数;

系统性能获取模块840,用于根据每个应用的应用性能指数和该分布式应用系统的应用性能指数分别获取每个应用的性能分析结果以及该目标分布式应用系统的性能分析结果。

可选的,图9是根据另一示例性实施例示出的一种分布式应用系统的性能监控装置的框图,该分布式应用系统的性能监控装置800可以用于执行图2所述的方法。参见图9,该分布式应用系统的性能监控装置800还可以包括:用户性能指数确定模块850;

该数据采集模块810,还用于根据每个应用的该监控数据获取产生该网络事务的每个用户的监控数据;

该用户性能指数确定模块850,用于根据每个用户的监控数据确定每个用户的应用性能指数;

该系统性能获取模块840,还用于根据每个用户的应用性能指数获取每个用户的用户体验质量分析结果。

可选的,图10是根据图8所示实施例示出的一种数据采集模块的框图,参见图10,该数据采集模块810,包括:

应用确定子模块811,用于根据该目标分布式应用系统的id确定属于该目标分布式应用系统的每个应用;

指标监控子模块812,用于利用在属于该目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控;

数据存储子模块813,用于将每个应用中植入的监控探针采集的数据存储为每个应用的监控数据。

可选的,图11是根据图8所示实施例示出的一种单应用性能指数确定模块的框图,参见图11,该单应用性能指数确定模块820,包括:

单应用请求数获取子模块821,用于根据第一应用的监控数据获取该第一应用的关于该网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,该第一应用为该目标分布式应用系的所有应用中的任一应用,该满意请求为响应时间小于第一时间阈值的网络事务请求,该可容忍请求为响应时间小于第二时间阈值的网络事务请求,该第一时间阈值小于该第二时间阈值,该请求总数为该第一应用接收到的网络事务请求的总数;

单应用性能指数确定子模块822,用于根据该第一应用的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该第一应用的应用性能指数。

可选的,图12是根据图8所示实施例示出的一种系统性能指数确定模块的框图,参见图12,该系统性能指数确定模块830,包括:

全应用请求数获取子模块831,用于根据该目标分布式应用系统内的所有应用的监控数据获取该目标分布式应用系统的关于该网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,该满意请求为响应时间小于第一时间阈值的网络事务请求,该可容忍请求为响应时间小于第二时间阈值的网络事务请求,该第一时间阈值小于该第二时间阈值,该请求总数为该目标分布式应用系统接收到的网络事务请求的总数;

系统性能指数确定子模块832,用于根据该目标分布式应用系统的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该目标分布式应用系统的应用性能指数。

可选的,该系统性能获取模块840,用于:

根据该目标分布式应用系统的应用性能指数与应用性能指数满分的接近程度获取该目标分布式应用系统的应用性能的分析结果,其中,该目标分布式应用系统的应用性能指数与应用性能指数满分的差值越小,表示该目标分布式应用系统的应用性能越高;以及,

根据每个应用的应用性能指数确定该目标分布式应用系统的所有应用中应用性能指数最小的应用;

将该应用性能指数最小的应用确定为该目标分布式应用系统中的性能瓶颈节点;或者,

根据每个应用的应用性能指数获取每个应用的应用性能指数的标准偏差;

将所有应用中应用性能指数的标准偏差最大的应用确定为该目标分布式应用系统中的性能瓶颈节点。

可选的,图13是根据图8所示实施例示出的一种用户性能指数确定模块的框图,参见图13,该用户性能指数确定模块850,包括:

用户请求数获取子模块851,用于根据第一用户的监控数据获取该第一用户的关于该网络事务的满意请求的数量、可容忍请求的数量以及请求总数,其中,该第一用户为该目标分布式应用系的所有用户中的任一用户,该满意请求为响应时间小于第一时间阈值的网络事务请求,该可容忍请求为响应时间小于第二时间阈值的网络事务请求,该第一时间阈值小于该第二时间阈值,该请求总数为该第一用户发起的网络事务请求的总数;

用户性能指数确定子模块852,用于根据该第一用户的该满意请求的数量、该可容忍请求的数量以及该请求总数确定该第一用户的应用性能指数。

可选的,该系统性能获取模块840,用于:

根据每个用户的应用性能指数与应用性能指数满分的接近程度获取每个用户的用户体验质量的分析结果,其中,每个用户的应用性能指数与应用性能指数满分的差值越小,表示用户的用户体验质量越高;或者,

根据每个用户的应用性能指数获取每个用户的应用性能指数的标准偏差;

将所有用户中应用性能指数的标准偏差最大的用户确定为该目标分布式应用系统中的用户体验质量最低的用户。

可选的,该应用确定子模块811,用于:

读取所有监控探针的配置文件,该配置文件中包括监控探针所植入的应用的id和所属分布式应用系统的id;

根据该目标分布式应用系统的id查找目标监控探针,该目标监控探针为配置文件中记录的所属分布式应用系统的id与该目标分布式应用系统的id匹配的监控探针;

将该目标监控探针所植入的应用确定为确定属于该目标分布式应用系统的应用。

可选的,该应用确定子模块811,用于:根据该目标分布式应用系统的id确定该目标分布式应用系统对应的应用名称;

根据该应用名称确定属于该目标分布式应用系统的每个应用。

可选的,图14是根据又一示例性实施例示出的一种分布式应用系统的性能监控装置的框图,该分布式应用系统的性能监控装置800可以用于执行图7所述的方法。参见图14,该分布式应用系统的性能监控装置800还可以包括:

可视化输出模块860,用于将每个应用的性能分析结果,该目标分布式应用系统的性能分析结果,以及每个用户的用户体验质量分析结果中的至少一者以可视化方式进行输出。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

综上所述,本公开提供的分布式应用系统的性能监控装置,通过利用在目标分布式应用系统的每个应用中植入的监控探针,对每个应用的网络事务的指定指标进行监控,进而得到每个应用的监控数据,根据每个应用的监控数据确定每个应用的应用性能指数、目标分布式应用系统的应用性能指数以及每个用户的应用性能指数,从而根据每个应用的应用性能指数、目标分布式应用系统的应用性能指数、以及每个用户的应用性能指数可以分别获取每个应用的性能分析结果、目标分布式应用系统的性能分析结果以及每个用户的用户体验质量的分析结果。既能够对单应用的应用性能进行评估,也可以根据整个目标分布式应用系统中所有的单应用的应用性能来确定整个目标分布式应用系统的性能瓶颈,还能够对整个目标分布式应用系统的应用性能进行评估,同时还可以对每个用户的用户体验质量进行评估,因此能够解决无法获知分布式应用系统的整体性能情况的问题,能够加强分布式应用运维的深度和针对性,简化运维工作的复杂度。

图15是根据一示例性实施例示出的一种电子设备1500的框图。如图15所示,该电子设备1500可以包括:处理器1501,存储器1502,多媒体组件1503,输入/输出(i/o)接口1504,以及通信组件1505。

其中,处理器1501用于控制该电子设备1500的整体操作,以完成上述的分布式应用系统性能的监控方法中的全部或部分步骤。存储器1502用于存储各种类型的数据以支持在该电子设备1500的操作,这些数据例如可以包括用于在该电子设备1500上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器1502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件1503可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1502或通过通信组件1505发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口1504为处理器1501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件1505用于该电子设备1500与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件1505可以包括:wi-fi模块,蓝牙模块,nfc模块。

在一示例性实施例中,电子设备1500可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的分布式应用系统性能的监控方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,例如包括程序指令的存储器1502,上述程序指令可由电子设备1500的处理器1501执行以完成上述的分布式应用系统性能的监控方法。

图16是根据一示例性实施例示出的另一种电子设备1600的框图。例如,电子设备1600可以被提供为一服务器。参照图16,电子设备1600包括处理器1622,其数量可以为一个或多个,以及存储器1632,用于存储可由处理器1622执行的计算机程序。存储器1632中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器1622可以被配置为执行该计算机程序,以执行上述的分布式应用系统性能的监控方法。

另外,电子设备1600还可以包括电源组件1626和通信组件1650,该电源组件1626可以被配置为执行电子设备1600的电源管理,该通信组件1650可以被配置为实现电子设备1600的通信,例如,有线或无线通信。此外,该电子设备1600还可以包括输入/输出(i/o)接口1658。电子设备1600可以操作基于存储在存储器1632的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm等等。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,例如包括程序指令的存储器1632,上述程序指令可由电子设备1600的处理器1622执行以完成上述的分布式应用系统性能的监控方法。

以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。

此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1