一种应用程序健康度评分方法及装置与流程

文档序号:34119345发布日期:2023-05-11 03:04阅读:44来源:国知局
一种应用程序健康度评分方法及装置与流程

本发明属于软件,具体而言属于一种应用程序健康度评分方法及装置。


背景技术:

1、four golden signals是google针对大量分布式监控的经验总结,4个黄金指标可以在服务级别帮助衡量终端用户体验、服务中断、业务影响等层面的问题。具体地,主要关注与以下四种类型的指标:延迟,通讯量,错误以及饱和度。

2、延迟即服务请求所需时间,记录用户所有请求所需的时间,重点是要区分成功请求的延迟时间和失败请求的延迟时间。例如在数据库或者其他关键祸端服务异常触发http500的情况下,用户也可能会很快得到请求失败的响应内容,如果不加区分计算这些请求的延迟,可能导致计算结果与实际结果产生巨大的差异。除此以外,在微服务中通常提倡“快速失败”,开发人员需要特别注意这些延迟较大的错误,因为这些缓慢的错误会明显影响系统的性能,因此追踪这些错误的延迟也是非常重要的。

3、通讯量即监控当前系统的流量,用于衡量服务的容量需求。流量对于不同类型的系统而言可能代表不同的含义。例如,在http rest api中,流量通常是每秒http请求数。

4、错误包括监控当前系统所有发生的错误请求,衡量当前系统错误发生的速率。对于失败而言有些是显式的(比如,http 500错误),而有些是隐式(比如,http响应200,但实际业务流程依然是失败的)。对于一些显式的错误如http500可以通过在负载均衡器(如nginx)上进行捕获,而对于一些系统内部的异常,则可能需要直接从服务中添加钩子统计并进行获取。

5、饱和度即衡量当前服务的饱和度。主要强调最能影响服务状态的受限制的资源。例如,如果系统主要受内存影响,那就主要关注系统的内存状态,如果系统主要受限与磁盘i/o,那就主要观测磁盘i/o的状态。因为通常情况下,当这些资源达到饱和后,服务的性能会明显下降。同时还可以利用饱和度对系统做出预测,比如,“磁盘是否可能在4个小时候就满了”。

6、这个四个黄金指标在在任何系统中都是很好的性能状态指标,他们之所以被称为“黄金”指标,很大一个因素是因为他们反映了终端用户的感知,因此任何监控系统都会提供被监控对象的这些指标或其变形,并在此基础上辅助,问题定位:方便用户发现系统问题并最终修复或绕开系统问题;告警:提前对系统的不正常状况进行提示,避免系统进一步恶化;系统调优或容量预测:让用户针对性的对系统做出调整或增强,让其能更好的满足业务的需求。通过对黄金指标量化,能够确保系统在扩展时保持快速且可靠的运作效果,每个人似乎都对这些指标的重要意义表示认同,但是单个指标并不能对整个系统的健康度进行整体评估。

7、有鉴于此,特提出本发明。


技术实现思路

1、有鉴于此,本发明公开了一种应用程序健康度评分方法及装置,更全面、快速、便捷和可解释的对应用程序健康度进行评估,基于基础指标数据对应用程序整体的健康度进行评分,无需进行拆分合并,算法简单。

2、具体的,本发明是通过以下技术方案实现的:

3、第一方面,本发明公开了一种应用程序健康度评分方法,包括如下步骤:

4、s1、获取应用程序的指标数据;

5、s2、根据所述指标数据所属区间,计算所述指标数据得到的贡献分数;

6、s3、将所述贡献分数带入健康度评分卡内计算所述应用程序的健康度分数;

7、s4、根据所述健康度分数判断所述应用程序的健康度。

8、进一步地,所述s3步骤中,计算所述应用程序的健康度分数的方法包括:将不同类型的所述指标数据根据其所述贡献分数的比重进行加成。

9、进一步地,所述指标数据包括:请求速率、服务错误数、服务错误率和响应时间。

10、进一步地,所述健康度分数的计算公式为:

11、健康度分数=25%*请求速率的贡献分数+25%*服务错误数的贡献分数+25%*服务错误率的贡献分数+25%*响应时间的贡献分数。

12、进一步地,所述s1步骤中,所述指标数据为每秒请求速率,每秒服务错误数,每秒服务错误率和包含90%的响应时间数值。

13、进一步地,所述s2步骤中,所述区间判定标准为:

14、所述请求速率在[0,002)的所述贡献分数为10,在[0.02,0.1)的所述贡献分数为20,在[0.1,0.5)的所述贡献分数为30,在[0.5,1.0)的所述贡献分数为50,在[1.0,+∞)的所述贡献分数为100;

15、所述服务错误数在[0,5)的所述贡献分数为100,在[5,10)的所述贡献分数为50,在[10,50)的所述贡献分数为30,在[50,100)的所述贡献分数为20,在[100,+∞)的所述贡献分数为10;

16、所述服务错误率在[0,0.01)的所述贡献分数为100,在[0.01,0.04)的所述贡献分数为50,在[0.04,0.08)的所述贡献分数为30,在[0.08,0.1)的所述贡献分数为20,在[0.1,1)的所述贡献分数为10;

17、所述响应时间在[0,500us)的所述贡献分数为100,在[500us,1ms)的所述贡献分数为50,在[1ms,10ms)的所述贡献分数为30,在[10ms,50ms)的所述贡献分数为20,在[50ms,+∞)的所述贡献分数为10。

18、进一步地,所述s4步骤中,所述健康度的判定标准为:

19、所述健康度分数在[40,80)为非常不健康,所述健康度分数在[80,120)为不健康,所述健康度分数在[120,200)为健康,所述健康度分数在[200,400]为非常健康。

20、第二方面,本发明公开了一种应用程序健康度评分装置,包括:

21、指标数据获取模块:获取应用程序的指标数据;

22、贡献分数计算模块:根据所述指标数据所属区间,计算所述指标数据得到的贡献分数;

23、健康度分数计算模块:将所述贡献分数带入健康度评分卡内计算所述应用程序的健康度分数;

24、健康度判断模块:根据所述健康度分数判断所述应用程序的健康度。

25、第三方面,本发明公开了一种计算机可读存储介质,其上存储有计算机程序所述程序被处理器执行时实现如第一方面所述应用程序健康度评分方法的步骤。

26、第四方面,本发明公开了一种计算机设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述应用程序健康度评分方法的步骤。

27、与现有技术相比,本发明的有益效果在于:

28、本发明提出的应用程序健康度评分方法及装置,在对于数值的设定上基于大量数据的观察和经验设定,基于基础数据本身对应用程序整体健康度进行评分,无需考虑更多与指标标准、事件、乃至高技术分析相关的复杂算法,只需结合评分卡模型,根据数据本身的各种属性和指标数据,在特定权重下计算健康度分数之和,得到健康度评分便能分析应用程序健康度,通过简单的算法更全面、快速、便捷和可解释的对应用程序健康度进行评估,减少应用程序在使用过程中的风险。

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