首页 > 其他分享 >性能测试概念

性能测试概念

时间:2024-09-02 15:55:07浏览次数:11  
标签:请求 并发 性能 概念 线程 测试 用户数

性能测试

  • 概念要能落地。
  • 并发: 默认多个人同时请求。性能测试中,
  • 用1个线程,循环请求100次。 ------自动测试
  • 100个线程,并发请求1次。 -----性能测试
  • 得到性能指标: 但是,性能测试,不是为了 冷冰冰的指标数据,而进行的。通过数据的意义,发现数据背后,可能存在的性能问题,并进行性能优化。
  • 性能要实现并发: 是使用工具。 工具,也包含,用代码。
  • 性能测试并发的实现方式: 进程、线程、协程
  • Jmeter用: 线程
  • loadruner用: 默认是用线程,也可以用进程
  • python+locust用: 协程

进程: 资源拥有着,一个程序,至少有一个进程和一个线程。

线程: 用资源来执行操作。

协程:比线程还要小的执行者。


性能测试概念_响应时间

并发测试

就是用 多个人 同时请求。

  • 并发: 同一间发现相同的请求
  • 并行:同一时间发起的请求可以相同、也可以不同

侠义并发测试:同一个时间有大量的并发请求同一个接口。 -------有集合点性能测试。

广义并发测试:同一个时间有大量的并发请求(可以相同、也可以不同) -------性能测试,更多时候用这种。

基准测试

进行第一次性能测试,得到性能指标数据。

就是我们以后,进行性能判断的基准。参考值

现在企业中,性能测试指标关注重点:

  • tps ----如: 产品计算密集型,就是期望服务的处理能力越高越好。----这样的产品性能测试,侧重在 tps 的数值上。
  • 并发用户数 ------如: toc的应用性能产品的接口性能。-----期望能同时支持的人越多越好。 响应时间,是来判断这个并发用户数的一个标准。

负载测试

逐步的增加并发用户数,调用接口,发起请求。观察性能指标数据,通过这些数据的实时展现,判断是否,达到了服务的瓶颈的并发用户数的区间。

指标判断的标准: 1、平均响应时间<1.5s 2、错误率<0.1%, 3、资源利用率 <80%

区间的起始、到最大之间,缩小步长,从而得到 具体并发用户数。

10-20-30-40-50-60----------90-100-------

观察,性能指标数据: 假设90的时候,平均响应时间<1.5s 错误率<0.1%,资源利用率 <80%。 并发用户数在100的时候, 平均响应时间、错误率、资源利率这三个标准中,有任意一个,超了。就可以得到可接受的并发用户数的区间 [90,100)

第二论负载测试,起始值 90-91-92-93-94--------100 ,观察性能指标数据。 三个标准来衡量,96正常,97时候有一个标准超了。

此时,这个接口 最大可接受的并发用户数就是 96

可以用 这个 96并发用户数,取做性能测试, 把结果记录下,作为:基准


压力测试、压测、稳定测试、容量测试、配置测试

口语中的压测:先做负载测试,得到 最大可接受的并发用户数。 然后,用这个最大可接受的并发用户数,做性能测试,得到性能指标数据,根据这些指标数据,判断是否有性能问题,问题可能在哪里。

压力测试: 长时间的性能测试。 通过长时间,来发现 服务器是否存在不稳定性的问题。

长时间: 现在一般,用 小时为单位。 以前是7*24.

这种测试的 并发用户数 ,应该设置多少呢? 这个问题,就要 压力测试 & 稳定性能 区分。

不稳定: 动不动就 重启、宕机、报错 --------就会说 服务不稳定。 瞬间压力大,就很容易导致不稳定。

瞬间压力: 比较端的时间 ,有非常大的请求。-----稳定性能测试,一般就是 并发用户数比较高。一般会加集合点。

压力测试, 相对 稳定测试而已,就会是 并发用户数较低。压力测试的并发用户数,我们就会选择 最大可接受并发用户数的[20%,80%]区间的中的值。

稳定性能测试,就会取最大可接受并发用户数的[80%, 无穷大]

容量测试: 测试数据库中数据量级不同的时候,性能的差异。

造数据: 造的数据,一定要完整的正确吗?

配置测试:不要仅理解为硬件配置,其实是更改服务的关键参数之后,进行性能测试。



性能指标

并发用户数: 并发请求的人 -------性能测试的源动力。=====请求的人,不等于请求账户。

响应时间:从发起请求,到收到响应之间的时间。(网络传输时间 + 服务器内部处理时间)不包括前端渲染时间。

  • 网络传输时间越接近0, 响应时间 越接近 服务器内部处理时间 ------性能测试,尽可能独立网络、不要用无线网络。尽可能用局域网。
  • 响应时间,一般用 平均响应时间 ART
  • 90% 95% 99%: 所有请求的响应时间,做要给从低到高的排序。总量90% 95% 99% 那个点的时间数据,就是90%,95% 99%的响应时间
  • 有的企业用 90%数据,作为 响应时间的标准。这个就要严格很多。------ 说明,接口,越稳定。

吞吐量

tps\QPS\RPS\HPS

吞吐率

资源利用率

标签:请求,并发,性能,概念,线程,测试,用户数
From: https://blog.51cto.com/u_16991796/11898641

相关文章

  • 达梦存储过程性能问题定位
    在达梦数据库中可以通过V$DMSQL_EXEC_TIME和debug方式来定位存储过程存在的性能问题,但V$DMSQL_EXEC_TIME往往定位比较粗糙,没法定位到存储过程中sql的执行时间,而debug可以点位具体某段sql,但如果存储过程里面有大量游标,参数变量值很多的情况下,debug调试也花费大量时间,下面介绍使用日......
  • 迅为电子RK3588S开发板第三章Buildroot系统功能测试
      iTOP-3588S开发板采用瑞芯微RK3588S处理器,是全新一代AloT高端应用芯片,采用8nmLP制程,搭载八核64位CPU(四核Cortex-A76+四核Cortex-A55架构),集成MaliG610MP4四核GPU,内置AI加速器NPU,算力达6Tops,支持8K视频硬件编码器和硬件解码器,提供了许多功能强大的嵌入式硬件引擎,性能更强......
  • 6.2K star!推荐一款开源混沌工程测试平台:Chaos Mesh
    1、ChaosMesh介绍ChaosMesh是一个开源的混沌工程平台,旨在帮助用户在生产环境中测试、验证和优化其应用程序的可靠性和稳定性。通过引入故障注入和混沌工程原则,ChaosMesh可以模拟各种故障场景,如网络延迟、节点故障、磁盘故障等,以帮助用户发现和解决系统中的潜在问题。项目地址:ht......
  • 关于Window操作系统中对Oracle的性能监控
    目的本文是为了测试数据仓库的实时数据抽取功能对源数据库和操作系统的性能的影响。由于Windows操作系统未提供类似于UNIX下的Top、ps、vmstat等CPU、内存、I/O监控工具,同时Oracle作为操作系统下的一个唯一进程而存在,这就导致windows操作系统在监控Oracle方......
  • LongWriter环境安装&推理测试
    ​引子一口气生成2万字,大模型输出也卷起来了!清华&智谱AI最新研究,成功让GLM-4、Llama-3.1输出长度都暴增。相同问题下,输出结果直接从1800字增加到7800字,翻4倍。大模型的生成内容一般都不会太长,这对于内容创作、问题回答等都存在影响,可能导致模型回答问题不全面、创造性能降低等。L......
  • 分布式概念及选举算法
    概念  由很多自主的计算机组成。很容易地把运行在不同计算机上的不同应用程序集成到单个系统中。清晰的记录接口。轻松的扩展。分布式类型:分布式计算系统、分布式信息系统(数据处理)互斥    集中式算法      每个程序在需要访问临界资源时,先给协调......
  • LIN总线CAPL函数—— 主节点波特率测试(ChkStart_LINMasterBaudrateViolation)
    ......
  • 单元测试 Mock不Mock?
    文章目录前言单元测试没必要?Mock不Mock?什么是Mock?Mock的意义何在?如何Mock?应该Mock什么?Mock编写示例总结前言前段时间,我们团队就单元测试是否采用Mock进行了一番交流,各有各的说法。本文就单元测试Mock不Mock给出我的观点,欢迎各位同仁提出不同的意见,共同探......
  • 介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
    Docker是一种开源的容器化平台,用于构建、部署和运行应用程序。它基于容器技术,可以将应用程序及其依赖项打包到一个独立的可移植的容器中,并在不同的环境中快速部署和运行。Docker的基本概念包括:镜像(Image):镜像是一个只读的模板,包含了完整的运行环境和所需的软件依赖等。可以基......
  • Unit测试OverflowException:达到最大重试次数10000次,仍未找到唯一值
    这个错误通常表示在进行单元测试时,你正在尝试查找一个唯一的值,但在达到最大重试次数(10000次)后仍未找到。这可能是由于以下原因之一导致的:1.数据问题:可能存在重复的数据或没有唯一的值可供查找。你可以检查测试数据,确保其中包含唯一的值。2.测试逻辑问题:可能存在错误的测试逻......