TP90,TP99,TP999,MAX含义

1,909 阅读2分钟

总结

TP99是指一组数据`从小到大`排列,处于99%位置的数据的值。
在工程性能指标中,TP99可以用来表示满足百分之九十九的网络请求所需的最低耗时。

比如我调用别人的一个方法函数,1小时内调用了1w次,监控中显示tp99是200ms,这个意思就是:
  百分之99%的调用,都可以在200ms内返回结果。

介绍

<1>TP90=100ms
   就是满足90%次数的网络请求所需要的最低耗时(90%的请求耗时情况)。

<2>TP99
   就是满足99%次数的网络请求所需要的最低耗时。TP99=10ms,表示这段时间99%的请求都在10毫秒以内

<3>TP999
    就是满足99.9‰的网络请求所需要的最低耗时。

MAX就是这段时间内耗时最大的,比如MAX=1000ms,表示这段时间最耗时的一次请求是1s,max高表示偶有一次请求,耗时很大。

计算方式:

TP指标:
  TP=Top Percentile,指在一个时间段内,统计该方法每次调用所消耗的时间,
         并将这些时间按从小到大的顺序进行排序, 并取出结果为 : 
             总次数 * 指标数 = 对应TP指标的值,再取出排序好的对应位置的时间。

TP50、TP90、TP99、TP999 计算方式一致。
TP90,TP99,TP999则对方法性能要求很高,接口性能参数"999线"就是TP999。
99.9%的请求的响应时间都<100ms,那么肯定对性能的要求比较高啊。

计算方式:
   进位取整(请求总次数*x%),取该请求值中最低耗时,注:x为TPx中的x
    TP50 = (int)(TOTAL_RUNS * 0.50);  
    TP90 = (int)(TOTAL_RUNS * 0.90);  
    TP99 = (int)(TOTAL_RUNS * 0.99);  
    TP999 = (int)(TOTAL_RUNS * 0.999);  
    TP100 = (int)(TOTAL_RUNS * 1);  
    
    

举一个栗子:

有四次请求耗时分别为:
10ms,1000ms,100ms,2ms

排序:[2ms,10ms,100ms,1000ms]

TP50:4次请求中,50%的请求数为4*0.50,进位取整也就是2次,满足这全部2次请求的最低耗时为10ms,也就是TP50的答案是10ms。

TP99:4次请求中,99%的请求数为4*0.99,进位取整也就是4次,满足这全部4次请求的最低耗时为1000ms,也就是TP99的答案是1000ms。