• 软件测试入门随笔——软件测试基础知识(七)


    • 测试性能模型分析

    1、曲线拐点模型

     

    这个图中X轴为并发用户数,随着并发用户数的增大,二维空间被划分为三个区域:轻压力区、重压力区和拐点区。

    Y轴表示资源利用率、吞吐量和响应时间,应该以X为自变量来逐一分析这三个指标的变化,再综合分析。

    ①随着并发用户数的增加,资源利用率逐步上升,最后达到饱和。

    ②随着并发用户数的增加,吞吐量增加。进入重压力区后逐步平稳,达到拐点区后急剧下降,说明系统已达到处理极限。

    ③随着并发用户数的增加,在轻压力区的响应时间变化不大,比较平缓,进入重压力区后呈现增长的趋势,最后进入拐点区后倾斜率增大,响应时间急剧增加。

    随着并发用户数增加,资源利用率和吞吐量增加,说明系统正在积极处理,所以响应时间增加得并不明显,处于比较好的状态。但是随着并发用户数的增加,压力也在持续地增大,吞吐量与资源利用率都达到了饱和,随后吞吐量急剧下降,造成响应时间急剧增长。轻压力区与重压力区的交界点是系统的最佳并发用户数,因为各种资源都利用充分,响应也很快;而重压力区与拐点区的交界点是系统的最大并发用户数,因为超过这个点,系统性能将会急剧下降甚至崩溃。

    2、地铁模型分析

    模拟地铁的场景来分析性能。

    先做出以下3个假设

    1. 某地铁进站只有3个刷卡机
    2. 人少的情况下,乘客能很快进站,假设进站只需要1s
    3. 乘客如果等待超过30min就会暴躁、唠叨甚至放弃(怎么感觉有点像小时候玩的餐厅小游戏啊,哇哈哈~)

    最初会出现如下3种场景:

    1. 只有1名乘客进站,可以在1s内完成,且只利用了一台刷卡机,剩余两台等待着。
    2. 只有2名乘客进站,可以在1s内完成,且只利用了两台刷卡机,剩余一台等待着。
    3. 只有3名乘客进站,仍能在1s内完成,此时资源得到充分利用。

    随后新场景出现了:

    1. 来了6名乘客,因为A、B、C先到,所以D、E、F要先排队等候,此时进站时间为2s。(相当于“响应时间”增长)
    2. 来了9名乘客,则其中有3名的“响应时间”为1s,有3名的“响应时间”为2s(进站1s+等待1s),还有3名的“响应时间”为3s(进站1s+等待2s)
    3. 来了10名乘客,则必有1名的“响应时间”为4s,以此类推,随着人流涌入,将达到乘客的忍耐极限。
    4. 假设地铁站正好在火车站,每名乘客都拿着大小不一的包,有的因为包太大卡在刷卡机那导致堵塞,进站时间就有不一样了。

    那么,如果拿包的乘客可以通过加宽的刷卡机快速进站,就能改善堵塞的问题了。如果乘客越来越多,3台刷卡机已经无法满足需求,那么为了减少人流的积压,可以多开几个刷卡机,增加进站的人流和速度(提升TPS、增大连接数)。

    还有1个大BOSS:

    1. 到了上班高峰时间,乘客数量上升太快,现有的进站措施已经无法满足,单单增加刷卡机已经不行了。此时的乘客相当于“请求”,乘客不是在地铁站进站排队,就是在站台排队等车,已经造成严重的“堵塞”。

    此时,增加发车频率(加快应用、数据库的处理能力)、增加车厢数量(增加内存、增大吞吐量)、增加线路(增加服务的线程)、限流、分流等多种措施就应需而生了。

  • 相关阅读:
    转载:从51CTO转来的两篇关于SQL的文章
    转载:几万年前,有一只猴子大闹地府后删库跑路...
    【java/oralce/sql】往一张仅有id,名称,创建时间三个字段的表中插入百万数据需要多久?1分26秒
    处处留心皆学问
    [oracle/java/sql]用于上十万批量数据插入Oracle表的Java程序
    Linux学习_003_虚拟机CentOS 7.5 如何固定IP地址
    Linux学习_002_VMware12.0 Pro 中安装 CentOS-7.5(桌面版)
    Linux学习_001_VMware10.0 && VMware12.0 Pro && VMware14.0 Pro && VMware 15.0 Pro 的安装与破解
    day76_淘淘商城项目_09_商品详情页动态展示实现(jsp+redis) + FreeMarker模板引擎入门 + 商品详情页静态化实现(Win版本的nginx作http服务器)_匠心笔记
    Eclipse注释模板设置详解
  • 原文地址:https://www.cnblogs.com/gajendra/p/6192697.html
Copyright © 2020-2023  润新知