必学比知性能指标和常用术语

开心一笑

【问:为什么女生有「体香」,而男人没有?
答:化妆品腌入味了→_→】


提出问题

必学比知性能指标和常用术语???


学习地址

CSDN学院:
http://edu.csdn.net/lecturer/994

腾讯学院:
https://huangwy.ke.qq.com/

网易学院:
http://study.163.com/instructor/1035331499.htm

解决问题

前言

常用术语

PV(page view):

PV是指一次从网站下载一个页面的请求。因此只要是发出了一个请求,无论你是否完全打开(下载)了这个页面,都计入一次PV;

实例:

UV(Unique Visitor)

统计1天内访问某站点的用户数(以cookie为依据)。访问网站的一台电脑客户端为一个访客。可以理解成访问某网站的电脑的数量。

IV

IP访问数指独立IP访问数,计算是以一个独立的IP在一个计算时段内访问网站计算为1次IP访问数。在同一个计算时段内不管这个IP访问多少次均计算为1次。

计算时段有以1天为一个计算时段,也有以1个小时为一个计算时段

扫描二维码关注公众号,回复: 2741844 查看本文章
PV、UV、IV运用

例如:我们可以通过IP和PV之间的数据差异,来更加深入的理解网站的流量数据。如果IP和PV的数据悬殊很大,比如,我们在查看网站流量数据时发现网站的PV是1000,IP为100,那么说明这个站点平均一个IP访问了网站内容10次,说明网站内容还是比较受欢迎的,所以访客才愿意在网站中停留那么久的时间,并浏览了那么多的网站页面内容。但是如果IP和PV的数据很接近,比如,网站的IP为100,PV为110,说明一个IP也就访问了网站内容大约1次,就说明网站内容的可读性太差,客户点击进去之后就离开了,没有有过多的停留。如果网站流量统计这样的数据过多的话,站长就需要对网站内容进行深入思考了,以便更好的提高网站的流量。

例如:在记录网站流量统计数据时,站长们有时候发现这样一种情况:有时候网站的IP数据大于UV数据,有时候UV的数据也会大于IP数据。为什么会出现这种现象呢?我们可以用一个例子来说明。比如,用同一个IP去访问我们的SEO网站,但是一个是用的台式的电脑,一个是用的笔记本,那么网站流量统计工具显示的数据就会是2个UV,1个IP。这时UV的数据就会大于IP的数据。但是,再比如,只是用一个台式电脑访问我们的SEO网站,但是一会拨一个号换一个IP,那么这时候网站流量统计工具显示的数据的UV就为1,但是IP的数据就会高于UV的数据。因此,IP和UV之间的数据并不一定存在比例关系,两者之间的数据也不是此消彼长的关系。

TPS(transactions per second)

每秒事务数,一个事务是指一个客户机向服务器发送请求然后服务器做出反 应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务数,最终利用这些信息来估计得分。

实例:用户每分钟执行6个事务,TPS为:6 / 60s = 0.10 TPS

响应时间RT(Reponse Time)

从客户端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间。响应时间通常用时间单位来衡量(一般为秒)

(1)在3秒之内,页面给予用户相应所有显示,可认为是很不错的

(2)在3-5秒之内,页面给予用户相应所有显示,可认为是好的

(3)在5-10秒之内,页面给予用户相应所有提示,可认为是勉强接收的

(4)超过10秒后就有点让人不耐烦,用户很坑不会继续等待下去

实例:

一个高速路有10个入口,每个入口每秒钟只能进1辆车

1、请问1秒钟最多能进几辆车?

答:TPS=10

2、每辆车需要多长时间进行响应?

答:reponse time = 1

3、改成20辆车,每秒能进几辆?每辆车的响应时间是多长?

答:TPS = 10,reponse time = 1

4、入口扩展到20个,每秒能进几辆?每辆车的响应时间是多长?

答:TPS = 20,reponse time = 1

5、看看,现在TPS变了,响应时间没变,TPS和响应时间有关系吗?

答:木有关系

峰值时间

每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间。

1) 二八法

具体计算公式为:

 tps = (24小时的PV值*80%)/(24*3600*20%)

例如:中文站每日的访问量为500万,其中19:00-23:40,访问量为400万,其余时间段的访问

量很平坦,而且其余时间段的总访问量为100万,那么就可以用二八法,其计算公式为 tps = (500万*0

.8)/(2436000.2)。

2)简单峰值法

若在每天的某一时段里有很大的访问量,其他时间相对较少,可以用简单峰值法,其实二八法只是简

单峰值法的一个特例。

  具体计算公式为:

    tps =(24小时的PV值)/(峰值时间段中的小时数*3600)

例如:中文站每日的访问量为500万,其中17:00-24:00这个时间段里面访问量为450万,其

它时间段的访问量很平缓,那么我们可以用简单峰值法近似计算,其计算公式为 tps = 500万/((24-17)*3600)

3)无峰值法

若24小时里的访问量都是平稳波动的,没有峰值,那么可以采用无峰值计算方法,图形如下。

   具体计算公式为:

     tps= (24小时的PV值)/(24*3600)

例如:中文站每日的访问量为500万,每小时的访问量都为20万左右,那么,可以用无峰值

法来近似计算,其计算公式为 tps = 500万/(24*3600)。

并发数

系统同时处理的request/事务数

RPS(requests per second)

平均并发数

RPS = 并发数/平均响应时间

TPS(Transaction per Second)与响应时间关系

响应时间和TPS在宏观上是反比的关系,但是两者之间没有直接关系。TPS和响应时间都是单独计算出来的,两者不是互相计算出来的。

QPS(queries per second)

QPS:req/sec = 请求数/秒

每秒钟处理完请求的次数。注意处理完字眼,具体是指发出请求到服务器处理完成功返回结果。可以理解在server中有个counter,每处理一个请求加1,1秒后counter=QPS

公式:QPS(TPS)= 并发数/平均响应时间 或者 并发数 = QPS * 平均响应时间

实例:

吞吐量

吞吐量,是指在一次性能测试过程中网络上传输的数据量的总和。

系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间

吞吐量是指系统在单位时间内处理请求的数量。

吞吐量(QPS)= 并发数/平均响应时间[一个系统吞吐量通常由QPS(TPS)、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统的吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降

用吞吐量来衡量一个系统的输出能力是极其不准确的,

用个最简单的例子说明,一个水龙头开一天一夜,流出10吨水;10个水龙头开1秒钟,流出0.1吨水。

当然是一个水龙头的吞吐量大。你能说1个水龙头的出水能力是10个水龙头的强?所以,我们要加单位时间,看谁1秒钟的出水量大,这就是吞吐率。

系统用户数

系统额定的用户数量,如一个OA系统,可能使用该系统的用户总数是5000个,那么这个数量,就是系统用户数。

在线用户数

在线用户数是指某一时刻已经登录系统的用户数量。在线用户数只是统计了登录系统的用户数量,这些用户不一定都对系统进行操作,对服务器产生压力

注册用户数

注册用户数指软件中已经注册的用户,这些用户是系统的潜在用户,随时都有可能上线。这个指标的意义在于让测试工程师了解系统数据中的数据总量和系统最大可能有多少用户同时在线

并发用户数

不同于在线用户数,并发用户数是指某一时刻向服务器发送请求的在线用户数,它是衡量服务器并发容量和同步协调能力的重要指标。

从这个含义上讲,我们可能会如下两种理解:

  • 同一时刻向服务器发送相同或者不同请求的用户数,也就是说,既可以包括对某一业务的相同请求,也可以包括对多个业务的不同请求
  • 同一时刻向服务器发送相同请求的用户数,仅限于某一业务的相同请求;
每秒点击数

每秒点击数是指每秒向Web服务器提交的HTTP请求数。这里的请求数应该这样计算:

如果你点击一个链接,这个操作返回的页面上有5张图片,那么下载每一张图片都需要一个http请求,也就是说这个页面下载完成之后的点击数应该是6(有其它需要下载的东西也同样计算)

业务成功率

业务成功率指多用户对某一业务发起操作的成功率。

例如:测试网络订票系统的并发处理性能,在早上8:00——8:30半小时的高峰里,要求能支持10万比订票业务,其中成功率不少于98%。

也就是说系统允许200笔订票业务超时或者因其它原因导致未能订票成功。

资源利用率

资源利用率就是指资源的使用情况,如CPU使用率、内存使用率、网络宽带的使用情况、磁盘I/O的输入输出量等系统硬件方面的监控指标。

一个完整的系统是由软件和硬件组成,缺了任何一方都不可能成为一个正常运作的系统,所以资源利用率也是测试人员的一个监控点,并在当前软件的发展趋势下,硬件资源的成本也不可小觑。

吞吐率

我们一般使用单位时间内服务器处理的请求数来描述其并发处理能力。称之为吞吐率(Throughput),单位是 “req/s”。吞吐率特指Web服务器单位时间内处理的请求数。

另一种描述,吞吐率是单位时间内网络上传输的数据量,也可以指单位时间内处理客户请求数量。它是衡量网络性能的重要指标。

通常情况下,吞吐率“字节数/秒”来衡量。当然你也可以用“请求数/秒”和“页面数/秒”来衡量。其实不管一个请求还是一个页面,它的本质都是在网络上传输的数据,那么用来表述数据的单位就是字节数。

蹦失率

蹦失率(Bounce Rate,又可译为跳失率),是指用户浏览第一个页面就离开的访问次数占该入口总访问次数的比例。

计算方法:

蹦失率 = 只浏览了一个页面的访问者数 / 全部的访问者数。

思考时间Think Time

考虑时间Thinking Time指的是在性能测试脚本中,事务与事务之间,会有一些短暂的停顿,就好像真实用户在操作时,两次操作之间需要考虑一下。

例如:用户注册的时候,在打开注册页面到提交注册页面之间,是有一段考虑时间的(用户在填写个人信息)。

日活跃用户数量
DAU(daily active user)
月活跃用户量
稳定性测试(reliability testing)

稳定性测试,也叫可靠性测试(reliability testing),是指连续运行被测系统,检查系统运行时的稳定程度。

我们通常用mtbf(mean time between failure,即错误发生的平均时间间隔)来衡量系统的稳定性,mtbf越大,系统的稳定性越强。

稳定性测试的方法也很简单,即采用247(24小时7天)的方式让系统不间断运行,至于具体运行多少天,是一周还是一个月,视项目的实际情况而定。

负载测试(load testing)

通常是指让被测系统在其能忍受的压力的极限范围之内连续运行,来测试系统的稳定性。

可以看出负载测试和稳定性测试比较相似,都是让被测系统连续运行,区别就在于负载测试需要给被测系统施加其刚好能承受的压力;

例如:

我们测试163邮箱系统的登录模块,先用1个用户登录,再用2用户并发登录,再用5个,10个…在这个过程中,我们每次都需要观察并记录服务器的资源消耗情况(可以通过任务管理器中的性能监视器或者控制面板中的性能监视器),当发现服务器的资源消耗快要达到临界值时(比如cpu的利用率90%以上,内存的占有率达到80%以上),停止增加用户,假如现在的并发用户数为20,我们就用这20个用户同时多次重复登录,直到系统出现故障为止。

负载测试为我们测试系统在临界状态下运行是否稳定提供了一种办法。

压力测试

压力测试,是性能测试的一种,通常是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。

比如我们不断增加并发的登录用户数,20,30,50…比如,当增加到70个用户并发登录时,系统崩溃了,最大登录并发数为70个左右。

案例

案例一:峰值时间所需机器计算

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

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

问:每天300w PV 的在单台机器上,这台机器需要多少QPS?

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

问:如果一台机器的QPS是58,需要几台机器来支持?

答:139 / 58 = 3


读书感悟

来自电影《足球尤物》

  • 不要惧怕伟大,有些人生来伟大,有些人成就伟大,但有些人不得不伟大。

经典故事

【有个人叫朱泙漫,他想学一种出奇的本领,听说支离
益会宰龙,就去拜支离益做老师,向他学宰龙的本领。
朱泙漫在支离益那儿学了三年,家产都花光了,才把宰龙的本领学到了手。可是天下本来没有龙,他到哪儿去施展他那绝妙的本领呢?
“屠龙之技”就是从这个故事来的,比喻毫不实用的所谓不平凡的本领。“屠”是“宰杀”,“技”是“技巧”,“本领”。 】


大神文章

【1】https://www.cnblogs.com/richardcuick/p/6384122.html
【2】https://blog.csdn.net/tongdingsidong/article/details/73741251
【3】https://www.jianshu.com/p/e872c1eb6c58
【4】https://baike.baidu.com/item/
【5】https://www.cnblogs.com/yuanjiangw/p/9028317.html
【6】https://www.cnblogs.com/yuanjiangw/p/9028317.html
【7】https://blog.csdn.net/lykangjia/article/details/73692240
【7】http://bbs.51testing.com/thread-1177897-1-1.html
【8】https://blog.csdn.net/peishaokai/article/details/79609703


其他

如果有带给你一丝丝小快乐,就让快乐继续传递下去,欢迎鼓励,点赞、顶、欢迎留下宝贵的意见、多谢支持!

猜你喜欢

转载自blog.csdn.net/huangwenyi1010/article/details/81435140