性能测试概念(一)

一,性能测试:

  1,当软件功能满足后,我们还要考虑大数据量的用户或者用户长时间使用软件等情况,并监控服务器的资源消耗等,这个过程我们就可以称之为性能测试

  2,对于软件性能测试来说:每一个角色看到的都不一样:

    用户:响应速度,易用,稳定,安全,可扩展

    管理员:cpu,内存,磁盘和网络带宽,数据库使用

    开发:架构,业务逻辑,数据表设计,线程,进程数,SQL语句执行耗时  

  3,性能测试的目的:

    评估系统的处理能力

    发现系统性能瓶颈

    为未来扩容提供有效的数据依据

  4,性能测试指标:并发用户数,交易成功率,响应时间,TPSHPS,吞吐量,资源利用率

    响应时间:客户端发起一个请求开始,到客户端接收到从服务器返回的响应结束,这个过程所消耗的时间,一般关注平均响应时间,90%响应时间和最大响应时间

    交易成功率:一段时间内成功的交易数在总交易数中所占的比例,不同的行业对交易成功率的要求不同,我们也可以叫做事务成功率

    TPSHPSTPS为每秒钟处理的交易(事物)数量,估算应用系统性能的重要依据,HPSHit per second)为每秒钟处理的请求(点击)数,技术层面

    吞吐量:性能测试过程网络传输的数据总量,反映服务器承受的压力

    资源利用率:服务器cpu,内存,磁盘和网络使用率,一般介意CPU持续占用不高于80%,超过90%认为构成性能瓶颈,内存和网络带宽介意有剩余,磁盘I/O不能长时间100%

  5,网络传输协议:HTTP协议

    HTTP:即超文本传输协议,应用层通讯协议:两个主要应用场景(传输网页以及图片等资源),主要组成(请求request,响应response,处理),网络7层模型这里要知道,HTTP属于哪一层?,每一层都有什么?

  6,http协议:请求request--->请求方法(Method)请求要做什么操作

      

      

       

    URL:请求的服务器以及接口地址以及查询参数

    请求头(Headers:请求数据辅助信息(内容类型,Cookie等)

    请求体(Request Body):请求数据

    GetPost请求:

    get请求没有请求体,只有请求行和请求头,Post有请求行,请求体,请求头

    

  7,性能测试的类型:基准测试,负载测试,疲劳测试,稳定性测试,一般项目,这四种类型的测试全部做完

    

    基准测试:一般用1个用户去跑一遍,查看业务能不能跑通,各项指标是否正确,另外10个用户跑一遍,如果各项指标超标,就没有必要进行下面的测试了,其次如果参数化中有100用户,那么循环100次,检查参数化的数据是否正确

    负载测试:在不知道系统的处理极限的时候,就是阶梯性的增加用户,找到系统的拐点

    疲劳测试:长时间的去压,不断增加用户,长达8小时,12小时,72小时等,看系统的处理能力,一般和负载测试结合

    稳定性测试:这个一般是模拟真实的产生环境,如果这个系统没有上线并且生产环境是单独的,那么可以直接在生产环境压,如果已经上线的,那么就要模拟生产环境,一般模拟的比例是1/4或者1/2,一般1/2比较好点,压力一般不是很大,但是持续时间很长,12小时,或者7*72小时,只要能支撑正常的用户数量用就行

    并发用户数=在线用户数*在线时间/8小时

posted @   老僧观天下  阅读(402)  评论(1编辑  收藏  举报
编辑推荐:
· 时间轮在 Netty , Kafka 中的设计与实现
· MySQL 优化利器 SHOW PROFILE 的实现原理
· 在.NET Core中使用异步多线程高效率的处理大量数据
· 聊一聊 C#前台线程 如何阻塞程序退出
· 几种数据库优化技巧
阅读排行:
· 跟着 8.6k Star 的开源数据库,搞 RAG!
· .NET 9 中的 多级缓存 HybridCache
· 夜莺 v8 第一个版本来了,开始做有意思的功能了
· 推荐一个C#轻量级矢量图形库
· .NET 9 增强 OpenAPI 规范,不再内置swagger
点击右上角即可分享
微信分享提示