ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

性能测试基本知识

2022-03-21 21:34:08  阅读:267  来源: 互联网

标签:负载 性能 基本知识 系统 业务 测试 服务器


性能测试基本知识

 

一、什么是性能测试

使用自动化工具,模拟不同的场景,对软件各项性能指标进行测试和评估的过程就是性能测试。

  1. 后台处理程序的性能(代码性能)

  2. 中间件、数据库、架构设计等是否存在瓶颈

  3. 服务器资源消耗(CPU、内存、磁盘、网络)

  中间件:是提供系统软件和应用软件之间连接的软件。如:Tomcat、Apache等

 

二、性能测试的指标是什么

1. 响应时间

  客户端发送请求,到客户端收到服务器返回的响应,过程中所经历的全部时间,都是响应时间 响应时间

2. 并发数

  并发测试的用户数(某一物理时刻同时向系统提交请求的用户数)

3. 吞吐量

  吞吐量(Throughput)指的是单位时间内处理的客户端请求数量,直接体现软件系统的性能承载能力

  注意:

1. 从业务角度来看,吞吐量也可以用“业务数/小时”、“业务数/天”、“访问人数/天”、“页面访问量/天”来衡量

2. 从网络角度来看,还可以用“字节数/小时”、“字节数/天”等来衡量网络的流量

3. 从技术指标来看,可以用每秒事务数(TPS)和每秒查询数(QPS)来衡量服务器具体性能处理能力

3.1、TPS

说明:Transactions Per Second,每秒事务数 (单位时间内系统处理的客户端请求的事务次数)

计算:TPS = 并发数/平均响应时间

事务:就是业务请求,对应一个或者多个操作。如支付请求,包括服务器查询用户余额,支付安全校验等多个操作。 一个业务请 求发送给服务器后,最终会定位到服务器对应的业务请求的代码,既有可能是一段代码也有可能是多段代码。

 

3.2、QPS

说明:QPS(Query Per Second)每秒查询数

应用:控制服务器每秒处理指定请求数(如:控制服务器达到每秒60QPS,服务器的性能各项性能指标是否正常)。 (衡量web 服务器处理能力一个重要指标)

 

4. 点击数

  点击数是衡量Web服务器处理能力的一个重要指标.

提示:

1. 点击数不是通常一般人认为的访问一个页面就是1次点击数,点击数是该页面包含的元素(图片、链接、框架等)向Web服 务器发出的请求数量。

 

5. 错误率

  错误率指系统在负载情况下,失败业务的概率。错误率=(失败业务数/业务总数)*100%。

 

6. 资源利用率

  是指系统各种资源的使用情况,一般用“资源的使用量/总的资源可用量×100%”形成资源利用率的数据

提示:通常,没有特殊需求的话

1.建议CPU不高于80%(±5)

2.内存不高于80%

3.磁盘不高于90% 4). 网络不高于80%

 

三、性能测试的目的

   识别系统的弱点,评估系统能力,发现系统性能瓶颈,提高系统可靠性能和稳定性,系统调优,评估软件能否满足未来的性能需求。

 

四、性能测试的分类

基准测试

  单个用户进行业务场景的测试,并统计性能的各项指标(为后续多用户性能测试做参考对 比)

负载测试

  通过逐步增加系统负载量,测试系统性能的变化,在满足性能指标的前提下,系统所能够承受的最大负 载量的测试。

    通过负载测试,一般能找到系统的最优负载和最大负载。

特点:

1):该方法主要目的是找到系统处理能力的极限

2):该方法在给定的测试环境下进行,通常需要考虑被测系统的业务压力量和典型场景

3):该方法一般用来了解系统的性能容量,或者是配合性能调优来使用

 

稳定性测试

  在服务器稳定运行(业务正常的负载量)的情况下,进行长时间的测试,保证服务器能够正常运行。

  长时间:1天、1周。

 

压力测试

      系统在一定饱和状态下,例如CPU、内存等饱和情况下,系统能够处理的会话能力,以及系统是否会出现错误

特点:

1.该方法的主要目的是检查系统处于压力情况下是应用的性能表现   该方法通过增加访问压力,是系统资源使用保持在一定水平,检验此时应用的表现,重点在于有误出错信息产生,系统对应用的响应时间等

2.该方法一般通过模拟负载等方法,使得系统的资源使用达到较高的水平

 

配置测试

      通过对被测系统软硬件环境的调整,了解各种不同环境对系统性能影响的程度,从而找到系统各项资源的最优分配原则

特点:

1.该方法主要目的是了解各种不同因素对系统系能影响的程度,从而判断出最值得进行的调优操作.

2.该方法一般在对系统性能状况有初步了解后进行,需要在确定的环境、操作步骤和压力条件下进行.

3.该方法一般用于性能调优和规划能力.

 

并发测试

     测试多个用户同时访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题,几乎所有的性能测试都会涉及一些并发测试。

 

容量测试

   关注系统在极限情况下的各种极限参数值。

在一定的软、硬件条件下,在数据库中构造不同数量级的记录数量,通过运行一种或多种业务场景在一定虚拟用户数量的情况下,获取不同数量级别的性能指标,从而得到数据库能够处理的最大会话能力,最大容量等。系统可处理同时在线的最大用户数,通常和数据库有关。

 

可靠性测试

   通过给系统加载一定的业务压力(如CPU资源在70%~90%的使用率)的情况下,运行一段时间,检查系统是否稳定因为运行时间较长,通常可以测试出系统是否有内存泄漏等问题。

 

失败性测试

  对于有冗余备份和负载均衡的系统,通过失败测试来检验如果系统局部发生故障,用户能否继续使用系统,用户受到多大的影响,如几台机器做均衡负载,一台或几台机器垮掉后系统能够承受的压力。

 

标签:负载,性能,基本知识,系统,业务,测试,服务器
来源: https://www.cnblogs.com/chenfeng01/p/16034101.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有