让面试者谈之色变的性能测试基础加油包,它终于来了,建议收藏!

一 QPS,每秒查询

QPS:每秒查询数的意思是“每秒查询率”,这是服务器每秒可以进行的相应查询数,它是特定查询服务器在指定时间内可以处理多少流量的度量。在互联网中,一台机器作为域名系统服务器的性能往往是以每秒的查询率来衡量的。(每秒处理的请求数,请注意这是已处理的)

二 TPS,每秒事务

TPS:是transactions personsecond的缩写,即每秒的事务数。它是软件测试结果的度量单位。事务是客户端向服务器发送请求,服务器做出响应的过程。客户端在发送请求时开始计时,在收到服务器的响应后结束计时,从而计算使用的时间和完成的事务数。QPS vs TPS:QPS与TPS基本相似,不同的是一次访问一个页面就形成了TPS;但是,一个页面请求可能会向服务器生成多个请求,服务器可以将这些请求计入“QPS”。例如,要访问一个页面,您将请求服务器两次,一次访问将产生一个“T”和两个“Q”。

三 RT,响应时间

TPS:是transactions personsecond的缩写,即每秒的事务数。它是软件测试结果的度量单位。事务是客户端向服务器发送请求,服务器做出响应的过程。客户端在发送请求时开始计时,在收到服务器的响应后结束计时,从而计算使用的时间和完成的事务数。QPS vs TPS:QPS与TPS基本相似,不同的是一次访问一个页面就形成了TPS;但是,一个页面请求可能会向服务器生成多个请求,服务器可以将这些请求计入“QPS”。例如,要访问一个页面,您将请求服务器两次,一次访问将产生一个“T”和两个“Q”。

四 并发数

并发数是指系统同时能处理的请求数量,这个也是反应了系统的负载能力。

五 吞吐量

并发数= QPS*平均响应时间

六 QPS,每秒查询

让我们通过一个例子把上面的概念串起来。根据第28定律,如果每天80%的时间就集中在20%的时间,这20%的时间称为高峰时间。

公式:(总光伏* 80%)/(每天秒数* 20%) =高峰时间每秒请求数(QPS)

机器:单台机器的峰值时间QPS每秒/QPS =所需机器

(1)单台机器每天300瓦光伏,这台机器需要多少QPS?

(3000000 * 0.8)/(86400 * 0.2)= 139(QPS)



(2)如果一台机器的QPS是58,需要多少台机器来支持?

139 / 58 = 3

七 最佳线程数、QPS、RT

(1)单线QPS公式:QPS = 1000毫秒/室温

对于同一系统,支持的线程越多,QPS越高。假设一个RT是80毫秒,QPS很容易计算,QPS = 1000/80 = 12.5。

在多线程的场景下,如果服务器上的线程数增加到2,那么整个系统的QPS就是2*(1000/80) = 25,这说明QPS是随着线程数的增加而线性增加的,所以听起来很合理,公司也有道理,但往往不是这样。

(2)QPS与RT的真实关系

我们想象的QPS和RT之间的关系是一个凹曲线,其中QPS随着RT的增加而逐渐减小

QPS和RT之间的实际关系是一条凸曲线,其中QPS随着RT的增加而逐渐减小

(3)最佳线程数

消耗服务器瓶颈资源的临界线程数如下

最佳线程数=((线程等待时间+线程cpu时间)/线程cpu时间)* CPU数

特征:

当达到最佳线程数时,线程数将继续增加,QPS不会改变,而响应时间将变长。如果线程数量继续增加,QPS将开始减少。

每个系统都有其最佳线程数,但在不同的条件下,最佳线程数会发生变化。

瓶颈资源可以是CPU、内存或锁资源、IO资源:超过最佳线程数——导致资源竞争,超过最佳线程数——增加响应时间。

互联网的数据术语

一 VV

访问量/访问量(VV): VV = Visitview:记录所有访问者在一天内访问您的网站的次数,同一访问者可能会多次访问您的网站。从访问者来到您的网站到网站的所有页面最终关闭,这算一次访问。如果访客连续30分钟没有打开并刷新页面,或者访客关闭浏览器,则算作本次访问结束。然后上图A显示了从搜索词“宫外孕有哪些症状”329到网站的访问量。

二 UV

UV(unique visitor)是独立访问者的数量,指访问一个网站或点击一个网页的不同IP地址的人数。当天UV只记录第一次进入网站的拥有独立IP的访客,不统计当天再次访问网站的访客。UV提供一定时期内不同受众的统计指标,但不反映网站的整体活动。

三 PV

即PV页面浏览量或点击量,是衡量一个网站或网页的用户访问量。具体来说,PV值是一个网站或网页在24小时内(0: 00到24: 00)被所有访问者浏览的页数。PV指的是页面刷新的次数,每次页面刷新都算作PV流量。测量方法是从浏览器向网络服务器发送请求。网络服务器收到请求后,会向浏览器发送与请求对应的页面,从而生成PV。所以在这里,只要这个请求发送到浏览器,不管这个页面是否完全打开(下载完成),都应该算作一个PV。

四 IP

独立IP数:一天内(00:00-24:00)访问网站的唯一IP数。一天内多次访问相同IP地址的网站只算一次。无论同一个IP访问了多少页面,独立IP的访问次数都是1次。

性能测试影响因素

一 响应时间

响应时间:对请求作出相应所需要的时间

网络传输时间:N1+N2+N3+N4

应用服务器处理时间:A1+A3

数据库服务器处理时间:A2

响应时间:N1+N2+N3+N4+A1+A3+A2

二 并发用户数的计算公式

系统中的用户数:系统中的额定用户数。

同时在线用户数:一定时间范围内同时在线用户数最多。

平均并发用户数的计算:C = nl/T

其中,c为平均并发用户数,n为平均每天访问系统(登录会话)的用户数,l为用户一天内从登录到登录会话的平均时间,t为巡检时间长度(用户一天使用系统多长时间)。

并发用户峰值计算:C约等于C+3 * √ C。

其中c为并发用户峰值,c为平均并发用户数,公式遵循泊松分布理论。

三 吞吐量计算公式

在没有性能瓶颈的情况下,吞吐量与虚拟用户数之间存在一定的关系,可以通过以下公式计算:f = vu * r/t。

f是吞吐量,VU代表虚拟用户数,R代表每个虚拟用户发出的请求数,T代表性能测试的时间。

四 性能计数器

资源利用率:指系统中各种资源的利用率,如CPU利用率68%,内存利用率55%。一般用“资源实际使用量/可用资源总量”来形成资源利用率。

性能计数器是描述服务器或操作系统性能的一些数据指示器。

五 思考时间的计算公式

Think Time,从业务角度来说,这个时间是指用户操作时每个请求之间的时间间隔,在性能测试中,为了模拟这样的时间间隔,引入think time的概念,更真实地模拟用户的操作。

在吞吐量的公式中,(F=VU*R/T)表明吞吐量F是VU数、每个用户发出的requesTS数R和时间T的函数,其中R可以由时间T和用户思考时间TS计算得出:R=T/TS。

猜你喜欢

转载自juejin.im/post/7035247057883365406