TP50、TP90、TP99的理解和使用
TP50、TP90、TP99的理解和使用
一 TP50、TP90、TP99 的概念
1.1 什么是 TP
TP 是 Top Percentile 的缩写,中文译作百分位。
1.2 什么是百分位
百分位是一个统计学的术语。
如果将一组数据从小到大排序,并计算相应的累计百分位,则某一百分位所对应数据的值就称为这一百分位的百分位数。可表示为:一组N个观测值按数值大小排列。如,处于P%位置的值称第P百分位数。
1.3 TP50、TP90、TP99 怎么理解
TP50、TP90、TP99 是工程性能指标,以网络请求耗时为例:
TP50:表示满足百分之五十的网络请求所需的*低耗时。
TP90:表示满足百分之九十的网络请求所需的*低耗时。
TP99:表示满足百分之九十九的网络请求所需的*低耗时。
二 TP50、TP90、TP99 的计算
2.1 简单举例
举个例子:有四次请求耗时分别为:
10ms,1000ms,100ms,2ms
那么我们可以这样计算TP99:4次请求中,99%的请求数为4*0.99,进位取整也就是4次,满足这全部4次请求的的*低耗时为1000ms,也就是TP99的答案是1000ms。
2.2 python 实现
运用 numpy 包的 percentile 方法实现 TP50、TP90、TP99 的计算。
import numpy as np
data = []
with open(‘文件路径’, ‘r’) as f:
for line in f.readlines():
data.append(float(line.strip()))
print(np.percentile(data, 95))
文件路径:是*对路径,如 /User/local/a.txt,其中 a.txt 是网络请求耗时数组。
可以将代码中的95修改成50、90、99,来实现 TP50、TP90、TP99 的计算。