运维监控常见指标含义

P95、P98 实时分位数


在看监控指标的时候,需要额外了解一些统计分析的概念

平均值 Avg

统计数据最常用的值就是平均值,例如平均耗时为 100ms,表示服务器当前请求的总耗时除以请求总数量,通过该值,我们大体能知道服务运行情况

但是使用平均值来衡量响应时间有个非常大的问题,这个衡量指标的计算方式会把一些异常的值平均掉,进而会掩盖一些问题,我们只知道所有请求的平均响应时间是 100ms,但是具体有多少个请求比 100ms 要大,又有多少个请求比 100ms 要小,大多少,是 200ms,还是 500ms,又或是 1000ms,我们无从得知

因此监控指标经常将平均值可视化的展示出来,并且在下方标出最大值、最小值、平均值的平均值,并且将原来的数据多少展示出来

比如在代码中,使用监控打点的时候,会以一小时的每分钟计算数据,即获取该小时下所有 QPS 除以 60,然后以每分钟多大展示,比如该分钟下有 1QPS,则该分钟表示为 0.01667:
在这里插入图片描述
total 是该时间段内所有数据的加和,avg 是 total 除以 60 计算出来的数据,代表一小时平均每分钟生成多少数据,而最后的 total*60 则是该时间段的所有 QPS

除了 QPS 监控还有另外一种 Time 监控,即一分钟内平均响应时间 time(一般是毫秒,代码中定义),k 代表 1000

百分位数值

平均值并不能反映数据分布及极端异常值的问题,这时我们可以使用百分位数值

百分位数值是一个统计学中的术语

如果将一组数据从小到大排序,并计算相应的累计百分位,则某一百分位所对应数据的值就称为这一百分位的百分位数。可表示为:一组n个观测值按数值大小排列。如,处于p%位置的值称第p百分位数

用我们软件开发行业的例子通俗来讲就是,假设有100个请求,按照响应时间从小到大排列,位置为X的值,即为PX值。

P1就是响应时间最小的请求,P10就是排名第十的请求,P100就是响应时间最长的请求

在真正使用过程中,最常用的主要有P50(中位数)、P95、P99

P50: 即中位数值。100个请求按照响应时间从小到大排列,位置为50的值,即为P50值。如果响应时间的P50值为200ms,代表我们有半数的用户响应耗时在200ms之内,有半数的用户响应耗时大于200ms。如果你觉得中位数值不够精确,那么可以使用P95和P99.9

P95:响应耗时从小到大排列,顺序处于95%位置的值即为P95值。

还是采用上面那个例子,100个请求按照响应时间从小到大排列,位置为95的值,即为P95值。 我们假设该值为200ms,那这个值又表示什么意思呢?

意思是说,我们对95%的用户的响应耗时在200ms之内,只有5%的用户的响应耗时大于200ms,据此,我们掌握了更精确的服务响应耗时信息

同样的道理,一个接口的 P98,代表了某个时间段内,将用户访问该接口的时间从低到高排序后,按顺序找出的第百分之九十八位的数据

这么说来,我们为什么不取某一时间段内,访问接口最高耗时呢,非得取一个 P98 这样的数据吗。原因是最耗时的请求有可能是某些极端情况,某些用户错误操作导致的,我们应当排除这些情况,这些请求没有什么意义

但是如果 P98 的请求耗时过高,并且一直过高,那很可能是系统出了问题,我们应当跟着接口优化一下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值