• Loadrunner-测试人员眼中的性能


    • 书名:软件性能测试学习笔记之LoadRunner实战
    • 作者:杨婷编著

    测试人员眼中的性能

    什么是性能测试
    主要包含三个方面
    在给定环境和场景中进行的测试活动
    根据测试结果批判是否存在性能问题
    如果存在性能问题,需定位性能瓶颈,提出改进建议
    在ISO软件质量模型中也有关于性能测试部分的介绍,提供了一组衡量软件质量的基础指标

     

    1.响应时间
    我们向服务器发起了某个请求,在没有缓存的情况下,服务器返回请求所花费的时间总和就等于响应时间。比如登录QQ邮箱,发送请求,1秒后进入邮箱首页,这1秒就是响应时间。
    客户感受到的响应时间=客户端响应时间+网络响应时间+服务器响应时间

    (1)客户端响应时间
    CT=Client Time 例如Ajax、HTML5、Bootstrap,由于客户端内嵌了大量的逻辑处理,消耗的时间可能很长,需要关注。

    (2)网络响应时间
    指网络传输交易请求和交易结果所消耗的时间,可以分为以下两个部分。 
      N1+N2+N3=客户端请求的网络延迟
      N4+N5+N6=服务器响应的网络延迟
    (3)服务器响应时间
      服务器完成交易请求执行的时间,服务器端的响应时间可以度量服务器的处理能力。
      WT=Web Server Time 
      AT=App Server Time
      DT=Database Time

       

    2.并发数
    我们可以通过有多少用户在使用系统了解系统的承载能力,客户总是希望越多越好,但系统总是有极限的。这里有三个概念需要加以区分。

    (1)系统用户数
       可以理解为系统注册用户总数。例如,截至2016年9月,网易邮箱用户总数达8.9亿,有些用户非常活跃,经常登录并留下“足迹”,而有的用户很少访问,甚至自己都忘记曾经注册过的账号了。
    (2)在线用户数
       当前统计时正在访问的用户总数。例如,网易邮箱每天有超过12万的在线用户数,但他们不一定会给网站造成巨大的压力,大多数用户只是浏览网页信息,并没有向服务器发起过多请求。
    (3)并发用户数
       同一时刻让服务器产生压力的用户数。例如,网易邮箱的12万在线用户中有20%正在使用发送邮件,那么服务器将承受这部分用户的压力。

    3.吞吐量(Throughput)
    严格意义上来讲我们可以把吞吐量分为“吞吐量”和“吞吐率”两个概念讲解。
    (1)吞吐量
       指在一次性能测试过程中网络上传输的数据量的总和,“吞”进去的是请求,“吐”出来的是结果,吞吐量反应的就是服务器的“饭量”,也就是服务器承受的压力。例如,在网易邮箱发送邮件比浏览页面需要更高的网络吞吐量。
    (2)吞吐率
       通常指单位时间内网络上传输的数据量,也可以指单位时间内处理的客户端请求数量/服务器返回的数据量。在数据库层面,吞吐率指的是在单位时间内,不同SQL语句的执行数量;从用户层面来讲,吞吐率也可以用“页面数/秒”、“业务数/小时”、“访问人数/天”等指标来衡量。
    【特别说明】:吞吐率=吞吐量/传输时间,例如,访问网易邮箱首页,首页大小按2MB计算,如果每秒有1000个首页访问量,那么吞吐率就约等于2GB/s(1GB=1024MB)。

     

    4.每秒通过事务数(TPS:Transaction Per Second)
    每秒钟系统能够处理的交易或事务的数量,它是衡量系统处理能力的重要指标。一个交易或者事务可能包含多个请求,例如,用户注册可以包含多个字段验证请求,而用户注册的TPS等于每秒钟能够注册的用户数量,如果每秒钟能够注册10个用户,那么TPS=10。
       【特别说明】:TPS和吞吐率在性能测试中的曲线呈正相关,每秒访问网易邮箱首页的次数1000次,那么TPS=1000次。


    5.每秒单击数(Hits per Second)
    每秒钟用户向Web服务器提交的HTTP请求数,这是Web应用特有的一个指标。如果把每次单击定义为一次交易,那么单击率和TPS就是一个概念,但事实上一个交易往往由若干请求数组成,请求当中包括页面HTML、css、图片等,甚至可能包括多个页面,也就是说单击数和TPS一般不会一致。
    例如,你想在网易邮箱提交一个登录请求,通俗来讲就是你用鼠标的一次“单击”登录按钮的操作,这个单击操作可能向服务器发出了90多个HTTP请求,但我们只能看作是1个事务。


    6.资源利用率
    指的是对不同系统资源的使用程度,主要针对Web服务器、应用服务器、数据库服务器、网络情况等。
      常见的资源有CUP占用率、内存使用率、磁盘I/O、网络。
    内存就像区域,将信息收集和存放起来,能够存放的信息量越多,计算机的反应也就越快,但关机后该区域的信息将被清空。(从内存读取数据要比从硬盘上快得多。)
    传统磁盘的I/O读写速度成为了计算机系统性能提高的瓶颈,制约了计算机整体性
    网络主要指网络流量,看是否是网络带宽的瓶颈。例如,邮箱首页2GB的吞吐量将消耗掉16Gbps的带宽。

  • 相关阅读:
    java泛型
    枚举类与可变参数
    JAVA反射实现JdbcTemplate中查询方法 返回的结果集自动封装成对应的JAVABean对象
    JAVA反射之内省
    JAVA反射基础
    java反射实现将HashMap中的键值对封装为一个JavaBean对象
    hexo配置发布至ssh非22端口服务器
    Exception -LoggerFactory is not a Logback LoggerContext but Logback is on the classpath
    去重优化
    两个域名指向同一服务器的非80端口
  • 原文地址:https://www.cnblogs.com/katyhudson/p/12463564.html
Copyright © 2020-2023  润新知