1.2 软件性能的几个主要术语

来源:互联网 发布:数据网络加速器 编辑:程序博客网 时间:2024/05/16 14:08

1.2.1 响应时间
响应时间是“对请求做出响应所需要的时间”,我们把响应时间作为用户视角软件性能的主要体现。
响应时间可划分为:呈现时间、服务端响应时间。
呈现时间:浏览器接收到响应数据后呈现和执行页面上的脚本所消耗的时间。
服务端响应时间:应用系统从请求发出开始到客户端接收到数据所消耗的时间。
响应时间可以分解为:微凉传输时间和应用服务器延迟时间。
说明:关于响应时间值是否能被接受带有一定的用户主观色彩,也就是说,响应时间的“长”和“短”没有绝对。因此,在进行性能测试时,合理的响应时间取决于实际的用户需求,而不能依据测试人员的设想来决定。

12.2 并发用户数
从用户的角度来看,在相当长的一段时间内(一天内),都会有基本固定数量的使用者使用该系统,虽然每个使用者的行为不同,但从业务的角度来说,如果所有的用户的操作手没有遇到性能障碍,则可以说该系统能够承受该数量的并发用户访问,这里的“并发 ”就是业务并发用户数

在系统运的运行过程中,我们把整个运行过程划分为离散的时间点,在每个点上,都有一个同时向服务端发送请求的客户数,那服务端承受的最大并发访问数。如果能找到运行过程中可能出现的最大可能的服务端承受的最大并发访问数,则在该用户数下,服务器承受的压力最大,资源承受的压力也最大,在这种状态下,可以考虑通过并发测试发现系统中存在的并发引起的资源争用等问题。
系统的服务端承受的最大并发访问数取决于业务并发用户数和业务场景(用户最常使用、最关注的业务操作),一般可以通过对服务器日志分析得到。

估计并发用户数的公式:
C = nL/T
其中
C:平均的并发用户数;
n:平均每天访问用户数(login session的数量);
L:一天内用户从登录到退出的平均时间(login session的平均长度);
T:考察的时间段长度(一天内多长时间有用户使用系统);

2、并发用户数峰值:
C’≈C+3*根号C
其中
C:公式1中的平均并发用户数;

1.2.3 吞吐量
吞吐量直接体现软件系统的承载能力,是指单位时间内系统系统处理的客户请求的数量;一般用请求数/秒或页面数/秒来衡量,从业务的角度,吞吐量也可以用访问人数/天或处理的业务数/小时来衡量;从网络的角度来说,也可以用字节数/天来考察网络流量。
对于非交互式应用,用“吞吐量”来描述用户对系统的性能的期望。
对于交互式应用来说,吞吐量指标反映的是服务器承受的压力。在容量的规划的测试中,吞吐量是一个重点关注的指标,因为它能够说明系统级别的负载能力。
吞吐量指标可以在两个方面发挥作用:
(1)用于协助设计性能测试场景,以及衡量性能测试场景是否达到预期的设计目标。
(2)用于协助分析性能瓶颈。
吞吐量计算公式
F=Nvu * R / T
其中
F:吞吐量;
Nvu:虚拟用户个数;
R:每个虚拟用户发出的请求数;
T:性能测试所用的时间;
说明:虽然吞吐量指标可被看作是系统承压力的体现,但在不同并发用户数量的情况下,对同一个系统施加相同的吞吐量压力,很可能会得到不同的测试结果。如果两个系统可能具有不同的用户数和用户使用模式,但如果具有基本一致的吞吐量,则可以说它们具有基本相同的平均处理能力。

1.2.4 性能计数器
性能基数器是描述服务器或操作系统性能的一些数据指标。计数器在性能测试中发挥着监控和分析的关键作用,尤其是在分析系统的可扩展性、进行性能瓶颈的定位时,对计数器取值的分析非常关键。对性能测试结果的分析必须基于多个不同的计数器。

1.2.5 思考时间
思考时间,也被称为休眠时间,从业务的角度来说,该时间指的是用户在进行操作时,每个请求之间的间隔时间。
计算思考时间的一般方法:
(1)首先计算出系统的并发用户数;
(2)统计出系统平均的吞吐量;
(3)统计出平均每个用户发出的请求数量;
(4)根据公式:R=T/Ts计算出思考时间。[R:用户发出请求数,T:时间,Ts:思考时间]
补充:为了让性能测试场景更加符合实际情况,可以考虑已步骤(4)计算得出的思考时间为基准,让实际思考时间在一定幅度内随机变动。

原创粉丝点击