系统性能指标(并发⽤户数、响应时间、及系统吞吐量)
⼀、并发⽤户数
并发⽤户数,是软件系统性能需求与性能测试最常⽤、最重要的指标之⼀。它既包含了业务层⾯也包含后端服务器层⾯的两层含义。
1.1、业务层⾯并发⽤户数
业务层⾯的并发⽤户数,指的是实际使⽤系统的⽤户总数。但是,单靠这个指标并不能反映系统实际承载的压⼒,我们还要结合⽤户⾏为模型才能得到系统实际承载的压⼒。
1.2、后端服务器层⾯并发⽤户数
后端服务器层⾯的并发⽤户数,指的是“同时向服务器发送请求的数量”,直接反映了系统实际承载的压⼒。
1.3、并发⽤户数对于性能测试
在实际的性能测试中,测试⼈员往往只能拿到性能需求的宏观数据,⽐如“系统并发⽤户数需要达到1w”
或者是“根据⽬前系统的数据分析系统当前最⼤的在线⽤户数是1w”。此时就需要性能测试⼈员对需求进⼀步提取与细分,以得到明确的系统性能需求指标。具体分析如下:
1、系统并发的⽤户数中是否全部的⽤户同时对服务器发起请求,既为实际的并发⽤户数。
2、系统并发⽤户数⾏为是否按⼀定⽐例分布,分布的⽐例是多少(如30%⽤户在浏览,20%⽤户填写信息、40%只是登录后什么都不⼲,10%的⽤户正在提交订单),通过分析可以得出实际的并发⽤户数。
3、若需求给出的是实际要求的并发⽤户数,则可以通过⽤户的⾏为模型设计性能测试场景。
4、并发⽤户是否是对单⼀业务场景。
1.4、⽤户⾏为模型
⽤户⾏为模型分析在性能测试中是关键的步骤,获得精准的⽤户⾏为模式,是除了获取性能需求外,最困难的⼯作。
获取⽤户⾏为模式的⽅法:
1、如果系统已经上线运⾏,则采⽤系统⽇志分析法获取⽤户⾏为统计和峰值并发量等重要信息;
2、对于⼀个全新系统来说,通常是参考⾏业中类似系统的统计信息来建模,然后分析。
⼆、响应时间
通常响应时间反映了软件系统完成某个操作所需要的时间,其标准定义是“应⽤系统从请求发出开始,到客户端接收到最后⼀个字节数据所消耗的时间”,是⽤户视⾓软件性能的主要体现。
响应时间,可以分为前端展现时间和系统响应时间两部分。
2.1、前端展现时间
前端展现时间定义
前端展现时间,⼜称呈现时间,取决于客户端收到服务器返回的数据后渲染页⾯所消耗的时间;
前端展现时间分析
对于web端前端的呈现时间可以使⽤Chrome浏览器的开发者⼯具中的Performance进⾏分析。
前端呈现时间主要是在执⾏JavaScript以及页⾯渲染上。
2.2、系统响应时间
系统响应时间,⼜可以进⼀步划分为 Web 服务器时间、应⽤服务器处理时间、数据库时间,以及各服务器间通信的⽹络时间。
在性能测试中⽐较关注的还是服务响应时间。
2.3、响应时间与性能测试需求
通常性能需求中只会包含⽤户的直观感受的时间,如⾸页加载时间少于3s,性能测试⼈员需要将需求做进⼀步的细分,需要考虑不同情况下的系统响应时间表现,⽐如收⾸次访问的响应时间、有缓存时的响应时间、系统在不同负载下的响应时间。
三、系统吞吐量
系统吞吐量,是最能直接体现软件系统负载承受能⼒的指标。
对性能测试⽽⾔,通常⽤“Requests/Second”、“Pages/Second”、“Bytes/Second”来衡量吞吐量。从业务的⾓度来讲,吞吐量也可以⽤单位时间的业务处理数量来衡量。
3.1、吞吐量的衡量⽅法
“Bytes/Second”和“Pages/Second”表⽰的吞吐量,主要受⽹络设置、服务器架构、应⽤服务器制约;
“Requests/Second”表⽰的吞吐量,主要受应⽤服务器和应⽤本⾝实现的制约。
web后端是指什么3.2、吞吐量指标的注意事项
特别注意:吞吐量可以反映服务器承受负载的情况,但在不同并发⽤户数的场景下,即使系统具有相同的吞吐量,但是得到的系统性能瓶颈也会相差甚远。
举个例⼦:
第⼀个场景100个并发⽤户,每⼀个⽤户每⼀秒对服务器发送⼀个请求,则吞吐量为100r/s。第⼆个场景1000个并发⽤户数,每个⽤户每隔10秒对对服务器发送⼀个请求,则吞吐量也是100r/s。显然这两个数据是不能⼀概⽽论的,对系统吞吐量的分析需要根据实际的性能测试场景(需要根据实际情况组合并发⽤户数、响应时间这两个指标)进⾏分析。
3.3、吞吐量与性能测试需求
吞吐量是可以由不同计算⽅式,在性能测试需求分析过程中就需要明确定义系统吞吐量的计算⽅式并与业务、产品、开发进⾏信息同步,以确团队的每⼀个⼈都能明确知晓系统吞吐量的表⽰⽅式。
注:部分内容参考极客时间的《软件测试52讲》
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论