性能常关注指标

软件性能是软件的一种非功能特性,它关注的不是软件是否能够完成特定的功能,而是在完成该功能时展示出来的及时性,不同软件它的及时性能给使用者带来不用的使用感受.。

在性能测试中使用的工具最常见的是loadrunner,还有后起之秀jmeter,但是loadrunner的占比还好很高的,在之前有写过jmeter与loadrunner的区别,纠结如何挑选使用工具时可进行才考选择    https://www.jianshu.com/p/58674189ebcf

不管工具如何选择,最终关注的性能指标都是一样的。

1、响应时间:

        响应时间是指系统对请求作出响应的时间。这个指标可以直接反应人对软件性能的主观感受,由于系统提供了很多的功能,不同的功能的逻辑处理方式也是千差万别,所以不同的功能响应的时间也会是不相同的,所以在讨论系统的响应时间是通常指的是“该系统所有功能的平均响应时间或者是最大响应时间”。往往也有的是针对每个功能或每组功能的平均响应时间或者最大响应时间进行讨论。响应时间的绝对值并不能直接的反映软件的性能高低,软件性能的高低取决与用户对该响应时间的接受度。如游戏小于100毫秒应该还不错,1秒勉强接受,3秒就完全不能接受,而在访问网页时3秒是可以接受的。

2、系统响应时间与应用响应时间:

        系统响应时间与应用响应时间又称“系统响应时间”和“呈现时间”,系统响应时间指的是服务器接收到用户请求到客户端接受到服务器发来的数据所需要的时间,也就是用户发出请求后得到结果的这段时间;呈现时间指的是客户端接收到服务器的数据时呈现呈现在页面上所需要花费的时间,呈现时间不仅仅与客户端的浏览器有关,与客户端自身设备有一定的关系,与前端做的处理复杂程度及系统的研发没有太大关系。

3、网络传输时间,应用延迟时间:

        网络传输时间指的是包括请求数据和响应数据在客户端和服务器进行传输的时间,应用延迟指的是网站软件实际处理请求所需的时间,而软件性能测试更关注的是“应用延迟时间”。在实际中,还可以把这些时间进行分解,分解的目的是希望把与所开发的软件直接相关的延迟时间和与所开发软件不相关的延迟时间分离开,如数据库延迟时间,中间件延迟时间,前者需要开发人员更改代码,而后者多数无能为力,详细的分解有助于性能的改善方案。

4、吞吐量:

        吞吐量是指系统在单位时间内处理请求的数量。对于没有并发的系统而言,吞吐量与相应时间成严格的反比关系,吞吐量就是相应时间的倒数,对于单系统而言,响应时间或者系统响应时间与应用延迟时间可以很好的度量系统的性能,但对于并发系统,通常需要用吞吐量作为性能指标,对于一个多用户系统来说,如果一个用户使用时系统的平均响应时间是t,当有n个用户使用时,系统的响应时间并不是n×t,而往往会小很多,在某些特殊情况下也会大很多,这不是因为系统超负载运行,而是因为每个请求需要用到的资源很多,每个处理的的过程难以并发导致在某一具体时间点上,所占资源并不多。也就是说在处理单个请求时很多的资源被闲置。在处理多个请求时如果合理的配置资源,每个用户看到的平均响应时间并不会随着用户数量的增加而线性增加,实际上不同的系统平均响应时间随用户量的增加而增长的速度也不一样,这也是采用吞吐量来度量并发系统的性能的主要原因。吞吐量是衡量系统性能时通用的指标,如果两个系统最大吞吐量基本一致,可以判定两个系统的处理能力基本一致。

5、并发用户数:

        并发用户数指的是系统可以承载的正常使用系统功能的用户数量。与吞吐量相比,并发数是一个更直观单页更笼统的性能指标。用户并发数是一个非常不准确的指标,因为用户不同的使用模式会导致不同的用户在单位时间内发出不同的请求数量。以某一需要注册才可以使用的网站为例,注册的用户不一定每时每刻都在网站上,因此具体时刻只有部分用户在线,而这些部分在线的用户中,多数的时间是用来阅读网站上的信息,而在某一时刻只有少部分在线用户会向网站发送请求信息,所以对注册用户,同时在线用户,与同时发送请求的用户这三组数据,注册用户作为性能指标误差可能会很大,用同时在线用户作为性能指标相对直观些,用同时发送请求的用户作为性能指标相对会更为准确些。

6、资源利用率:

        资源利用率指的是在一段时间内资源平均被占用的情况。对于数量为 1 的资源,资源利用率可以表示为被占用时间与整段时间的比值;对于数量不为 1 的资源,资源利用率可以表示为该段时间内平局占用资源数与总资源数量的比值

你可能感兴趣的:(性能常关注指标)