吞吐量、QPS(TPS)、并发量、响应时间

QPS/TPS:系统每秒能够处理的请求数量/事务数量。
吞吐量:即 QPS/TPS。
并发量:同时到达服务器的请求数量。
响应时间(RT):服务器处理每个请求需要的时间。

QPS = 并发量 / 响应时间
同时,响应时间也受到并发量的影响。当服务器没有满负荷的情况下,几乎不受影响,当服务器满负荷后,响应时间会随着并发量的增加呈现指数式增长。此时吞吐流量(或QPS)会急剧下降。

为了有助于理解,网上偷了一张图
吞吐量、QPS(TPS)、并发量、响应时间_第1张图片
图中横坐标是并发量,绿线是CPU使用率,紫线是QPS,蓝线是响应时间。
开始,系统只有一个用户,CPU工作肯定是不饱合的。一方面该服务器可能有多个CPU,但是只处理单个进程;另一方面,在处理一个进程中,有些阶段可能是IO阶段,这个时候会造成CPU等待,但是有没有其他请 求进程可以被处理。随着并发用户数的增加,CPU利用率上升,QPS相应也增加(公式为QPS=并发用户数/平均响应时间)。随着并发用户数的增加,平均响应时间也在增加,而且平均响应时间的增加是一个指数增加曲线。而当并发数增加到很大时,每秒钟都会有很多请求需要处理,会造成进程(线程)频繁切换,反正真正用于处理请求的时间变少,每秒能够处 理的请求数反而变少,同时用户的请求等待时间也会变大,甚至超过用户的心理底线。

你可能感兴趣的:(服务器)