性能监控 TP 指标

一、TP 指标

在对系统进行性能测试或性能监控时候,TP 指标是一种比较常见的性能参数,包括 TP50、TP99、TP999 等等。

总 次 数 ∗ 指 标 数 = 对 应 指 标 在 总 次 数 中 的 序 号 总次数 \ast 指标数 = 对应指标在总次数中的序号 =

通俗点说,假设为了测试某接口性能,对其调用100次,将每次的响应时间升序排序,假设响应时间排序结果为:1、2、3…99、100 毫秒。

那么:

T P 50 = 100 ∗ 50 % = 第 50 次 = 50 毫 秒 TP50 = 100 * 50\% = 第50次 = 50毫秒 TP50=10050%=50=50

也就是说,该接口 TP50 达到了 50 毫秒的水平,也就是说请求该接口有 50% 的情况耗时在 50 毫秒以下

同理:

T P 999 = 100 ∗ 99.9 % = 第 99.9 次 ≈ 100 毫 秒 TP999 = 100 * 99.9\% = 第99.9次 \approx 100毫秒 TP999=10099.9%=99.9100

也就是说,该接口 TP999 达到了 100 毫秒的水平,也就是说请求该接口有 99.9% 的情况耗时在 100 毫秒以下

需要注意的是,一般在 TP 指标中,如果对应的序号不是整数,一般向上取整。例如在上例的 TP999 中,序号 99.9 不存在,取了序号 100 来计算。

二、百分位数

TP 指标脱离了在计算机中的应用,实际上在统计学学中就是百分位数的概念。

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

也就是说,TP50 其实就是 50百分位数,TP999 就是 99.9百分位数。百分位数计算的结果是一个具体值,计算公式如下:

假设存在数组(下标从 0 开始) a,百分位数为:p,将数组其升序排序后,那么:

( a . l e n g t h − 1 ) ∗ p = i + j (a.length - 1) \ast p = i + j (a.length1)p=i+j

其中 i i i 为结果整数部分, j j j 为结果小数部分。

计算最终结果为:

r e s = ( 1 − j ) ∗ a [ i ] + j ∗ a [ i + 1 ] res = (1 - j) \ast a[i] + j \ast a[i+1] res=(1j)a[i]+ja[i+1]

举个例子:存在数组:[1, 2, 3, 4, 5, 6, 6, 6, 6, 7, 8, 9],已经保证升序排序了,求90百分位数,那么:

KaTeX parse error: No such environment: split at position 8: \begin{̲s̲p̲l̲i̲t̲}̲ (a.length - 1)…

计算最终结果为:

KaTeX parse error: No such environment: split at position 8: \begin{̲s̲p̲l̲i̲t̲}̲ res &= (1 - 0.…

也就是说,这组数据的90百分位数为 7.9,即 TP90 = 7.9。

PS:以上公式实际上就是 Excel 的 PERCENTILE 函数的实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值