1、TPS:
是每秒事务数,具体事务的定义,都是人为的,可以一个接口、多个接口、一个 业务流程等等。一个事务是指事务内第一个请求发送到接收到最后一个请求的响应的过程,以此来计算使用的时间和完成的事务个数。
以单接口定义为事务为例,每个事务包括了如下3个过程:
a.向服务器发请求
b.服务器自己的内部处理(包含应用服务器、数据库服务器等)
c.服务器返回结果给客户端
如果每秒能够完成N次这三个过程,tps就是N;
如果多个接口定义为一个事务,那么,会重复执行abc,完成一次这几个请求,算做一个tps。
2、QPS:
在分布式系统中 QPS 的定义是,单个进程每秒请求服务器的成功次数
QPS = 总请求数 / 进程总数 / 请求时间 = 总请求数 / ( 进程总数 * 请求时间 )
3、TPS与QPS区别:
如果是对一个查询接口(单场景)压测,且这个接口内部不会再去请求其它接口,那么tps=qps,否则,tps≠qps
如果是容量场景,假设n个接口都是查询接口,且这个接口内部不会再去请求其它接口,qps=n*tps
4、PV:
Page View,页面访问量,指一定时间范围内打开或刷新页面的次数。一般以 24 小时计算。
每天总PV = QPS * 3600 * N 即QPS乘以一天的秒数
日PV=QPS*60*60*24
峰值QPS=日PV*0.8/(60*60*24*20%)//通用公式每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间
5、服务器数量计算:(服务器预估量)
服务器数量 = ceil( 每天总PV / 单台服务器每天总PV )
服务器预估值 = (PV * 页面衍生连接数*(1 + 增涨率)) / 统计时间 /单机并发连接数
注:统计时间,即 PV 的统计时间,一般为一天
6、服务器带宽:
服务器带宽是在给定时间内可以传输的数据量。
上行带宽和下行带宽:上行宽带(速度)指的是上传的速度,而下行宽带(速度)指的是下载数据是的数度。
1B=8b
例如你从宽带运营上那里办理了10M的宽带,10Mbps=10240Kbps/8=1280KBps,所以你在电脑上下载数据 是,你的最大的下载速度只有1280KBps,也就是只有1M/s左右的样子
7、平均带宽的计算公式为:
平均带宽 = 总流量数(bit) / 产生这些流量的时长(秒)=(PV * 页面平均大小 * 8) / 统计时间(秒)
说明:公式中的 8 指的是将 Byte 转换为 bit,即 8b/B,因为带宽的单位是 bps(比特率),即bit per second,每秒二进制位数,而容量单位一般使用 Byte。
假设某站点的日均 PV 是 10w,页面平均大小 0.4 M,那么其平均带宽需求是: 平均带宽 = (10w * 0.4M * 8) / (60 * 60 * 24)= 3.7 Mbps
以上计算的仅仅是平均带宽,我们在进行容量预估时需要的是峰值带宽,即必须要保证站点在峰值流量时能够正常运转。假设,峰值流量是平均流量的 5 倍,这个 5 倍称为峰值因子。按照这个计算,实际需要的带宽大约在 3.7 Mbps * 5=18.5 Mbps 。
带宽需求 = 平均带宽 * 峰值因子
8、并发量(并发连接数)
一般是指单台服务器每秒处理的连接数。平均并发连接数的计算公式是:
平均并发连接数 = (站点 PV * 页面平均衍生连接数) / (统计时间 * web 服务器数量);
注:页面平均衍生连接数是指,一个页面请求所产生的 http 连接数量,如对静态资源的 css、js、images 等的请求数量。这个值需要根据实际情况而定。
例如,一个由 5 台 web 主机构成的集群,其日均 PV 50w,每个页面平均 30 个衍生连接,则其平均并发连接数为:
平均并发量 = (50w * 30) / (60 * 60 * 24 * 5) = 35
若峰值因子为 6,则峰值并发量为:
峰值并发量 = 平均并发量 * 峰值因子
= 35 * 6 = 210
















