发表于: 2018-11-22 22:09:37

1 752


今天完成的事情:
装了postman
明天计划的事情:
任务七
遇到的问题:
没有
收获:
一、什么是性能测试?
性能测试、压力测试、负载测试是经常提到的三个概念,这三个名词的含义常常混淆,我们来看一下他们的概念解释:
负载测试
       系统正常工作时所能承受的最大负载,也可称为“容量测试”。模拟实际软件系统所承受的负载条件的系统负荷,通过不断加载(如逐渐增加模拟用户的数量)或其它加载方式来观察不同负载下系统的响应时间和数据吞吐量、系统占用的资源(如CPU、内存)等,以检验系统的行为和特性,以发现系统可能存在的性能瓶颈、内存泄漏、不能实时同步等问题。负载测试更多地体现了一种方法或一种技术。
 压力测试
        在什么极限情况下系统会崩溃,是否具有自我恢复性。在强负载(大数据量、大量并发用户等)下的测试,查看应用系统在峰值使用情况下操作行为,从而有效地发现系统的某项功能隐患、系统是否具有良好的容错能力和可恢复能力。压力测试分为高负载下的长时间(如24小时以上)的稳定性压力测试和极限负载情况下导致系统崩溃的破坏性压力测试。在高负载情况下来对系统的稳定性进行测试,更有效地发现系统稳定性的隐患和系统在负载峰值的条件下功能隐患等。
 性能测试
        为了获得系统在某种特定的条件下(特定的负载条件下)的性能指标数据。性能测试会在不同负载情况下进行。
 
       乍一看其实三者之间的区分不大,提炼一下可以总结为:负载测试是性能测试、压力测试所使用的一种方式方法。不同的是,压力测试的目的是为了看在怎样的条件下系统会崩溃以发现各个组件的不足,而性能测试的目的则是为了看不同负载情况下的系统表现,我认为可以说压力测试是一种极限的性能测试方式。
 
不同的角色对于性能测试的理解是不一样的:
对于用户而言
对于开发者而言
对于管理员而言
而对于测试而言,性能是质量保证的一部分,需要从以上各个角度考虑。
二、涉及的基础概念
      1. 响应时间
          从用户发送一个请求到用户接收到服务器返回的响应数据的时间就是响应时间。
      2. 吞吐量
          每秒系统处理的请求数量。吞吐量大表明系统单位时间能处理的请求数越多。
          TPS:Transactions Per Second,每秒事务数。它是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。
          QPS:Queries Per Second,每秒查询率。它是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。
         区别及理解:
         a. TPS即每秒处理事务数,包括:”用户请求服务器”、”服务器自己的内部处理”、”服务器返回给用户”,这三个过程,每秒能够完成N个这三个过程,TPS也就是3;
         b. QPS基本类似于TPS,但是不同的是,对于一个页面的一次访问,形成一个TPS;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就可计入QPS之中。
         c. 一般的,评价系统性能均以每秒钟完成的技术交易的数量来衡量。系统整体处理能力取决于处理能力最低模块的TPS值。
         d. QPS对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。
      3. 错误率
          错误请求数量与总请求数量之比。负载增加,可能会出现请求处理不过来的情况,错误数量就会不断增加。
      4. 资源利用率
     定义:指的是对不同系统资源的使用程度,通常以占用最大值的百分比来衡量
     通常需要关注的服务器资源如下:
     a. CPU
定义:中央处理器是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。CPU Load: 系统正在干活的多少的度量,队列长度。系统平均负载。
标准:CPU指标主要指的CPU利用率,包括用户态(user)、系统态(sys)、等待态(wait)、空闲态(idle)。CPU 利用率要低于业界警戒值范围之内,即小于或者等于75%;CPU sys%小于或者等于30%, CPU wait%小于或者等于5%。单核CPU也需遵循上述指标要求。CPU Load要小于CPU 核数。
     b. 内存
定义:与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。
标准:现代的操作系统为了最大利用内存,在内存中存放了缓存,因此内存利用率100%并不代表内存有瓶颈,衡量系统内有有瓶颈主要靠SWAP(与虚拟内存交换)交换空间利用率,一般情况下,SWAP交换空间利用率要低于70%,太多的交换将会引起系统性能低下。
     c. 磁盘吞吐量
定义:磁盘吞吐量是指在无磁盘故障的情况下单位时间内通过磁盘的数据量。
标准:磁盘指标主要有每秒读写多少兆,磁盘繁忙率,磁盘队列数,平均服务时间,平均等待时间,空间利用率。其中磁盘繁忙率是直接反映磁盘是否有瓶颈的的重要依据,一般情况下,磁盘繁忙率要低于70%。
     d. 网络吞吐量
定义:网络吞吐量是指在无网络故障的情况下单位时间内通过的网络的数据数量。单位为Byte/s。网络吞吐量指标用于衡量系统对于网络设备或链路传输能力的需求。当网络吞吐量指标接近网络设备或链路最大传输能力时,则需要考虑升级网络设备。
标准:网络吞吐量指标主要有每秒有多少兆流量进出,一般情况下不能超过设备或链路最大传输能力的70%。



返回列表 返回列表
评论

    分享到