系统吞吐量(TPS)、用户并发量、性能测试概念和公式
作者:网络转载 发布时间:[ 2013/7/15 9:52:44 ] 推荐标签:
近期在做项目的性能测试和性能优化,先了解与性能相关的一些概念。
一.系统吞度量要素:
一个系统的吞度量(承压能力)与request对cpu的消耗、外部接口、IO等等紧密关联。
单个request对cpu消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。
系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间
QPS(TPS):每秒钟request/事务 数量
并发数: 系统同时处理的request/事务数
响应时间: 一般取平均响应时间
(很多人经常会把并发数和tps理解混淆)
理解了上面三个要素的意义之后,能推算出它们之间的关系:
QPS(TPS)=并发数/平均响应时间
一个系统吞吐量通常由QPS(TPS)、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统高值,系统的吞吐量上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降。
决定系统响应时间要素
我们做项目要排计划,可以多人同时并发做多项任务,也可以一个人或者多个人串行工作,始终会有一条关键路径,这条路径是项目的工期。
系统一次调用的响应时间跟项目计划一样,也有一条关键路径,这个关键路径是是系统影响时间;
关键路径是有cpu运算、IO、外部系统响应等等组成。
二.系统吞吐量评估:
我们在做系统设计的时候需要考虑cpu运算、IO、外部系统响应因素造成的影响以及对系统性能的初步预估。
而通常境况下,我们面对需求,我们评估出来的出来QPS、并发数之外,还有另外一个维度:日PV。
通过观察系统的访问日志发现,在用户量很大的情况下,各个时间周期内的同一时间段的访问流量几乎一样。比如工作日的每天早上。只要能拿到日流量图和QPS我们可以推算日流量。
通常的技术方法:
1. 找出系统的高TPS和日PV,这两个要素有相对比较稳定的关系(除了放假、季节性因素影响之外)
2. 通过压力测试或者经验预估,得出高TPS,然后跟进1的关系,计算出系统高的日吞吐量。B2B中文和淘宝面对的客户群不一样,这两个客户群的网络行为不应用,他们之间的TPS和PV关系比例也不一样。
A)淘宝
淘宝流量图:
淘宝的TPS和PV之间的关系通常为 高TPS:PV大约为1:11*3600(相当于按高TPS访问11个小时,这个是商品详情的场景,不同的应用场景会有一些不同)
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11