首页 > 其他分享 >性能基础随笔1

性能基础随笔1

时间:2023-01-22 18:11:40浏览次数:45  
标签:请求 系统 性能 基础 用户 并发 吞吐量 随笔

1,影响软件性能的因素

网络环境、数据路服务器、应用服务器、业务逻辑的实现方式、系统采用的架构、代码的优化程度、使用者的使用方式等

2,软件性能测试的应用领域

能力验证、规划能力、性能调优、瓶颈发现、性能基准比较

3,性能测试的基本概念

性能是一种软件性能对其及时性要求的符合程度的指标

性能的及时性用响应时间或吞吐量表示

响应时间:对请求做出响应需要的时间

例子:交互式应用(web):用户感受到的响应时间

   非交互式的应用(嵌入式或者银行等业务处理系统):系统对事件产生响应的时间

  3.1,用户视角的软件性能

  端→端

  用户操作-数据操作请求-服务端响应-返回数据-客户端

  3.2,管理员视角的软件性能

  服务器资源使用状况是否合理        资源利用率

  数据库资源使用状况是否合理        资源利用率

  系统能否可以实现扩展           系统可扩展性

  系统的最大并发,压力是多少

  并发:最多能支持多少用户访问       系统容量

  压力:最大的业务处理量

  系统可能的瓶颈在哪里           系统可扩展性

  更滑什么设备能提升性能          系统可扩展性

  能否支持7*24小时的业务访问        系统稳定性

  3.3,开发视角的软件性能

  架构设计是否合理            系统架构

  数据库设计是否存在问题            数据库设计

  代码是否存在性能方面的问题       代码

  系统中是否存在不合理的内存使用方式   代码

  系统中是否存在不合理的线程同步方式      设计与代码

  系统中是否存在不合理的资源竞争      设计与代码

  3.4,web前端性能

  前端响应时间:页面加载时间

         1.对HTML的解析读取

         2.对页面图片及css等文件的获取和加载

            3.客户端脚本(js)的执行时间

         4.对页面进行展示所花的时间

4.主要术语

4.1并发用户数:N用户同时访问系统

1.服务器实际承受的压力不止取决于并发用户数,还取决于用户的业务场景

2.服务端承受的最大并发访问数取决于并发用户数+业务场景

业务场景:通过服务器日志的分析得出的结果

日志分析方法:对服务器日志进行分析,了解系统用户的使用状态,计算出服务器承受的最大并发用户数量

估算并发数公式:

  平均用户并发数: C =n*L/T

  峰值并发用户数:C>≈C+3√C

  其中,C是平均并发数,n是用户从登陆到退出系统的时间段,L是系统使用时间段的平均值,T是使用系统的时间段数值,                            C›指并发用户数的峰值。

  对于企业内部使用的web系统,还有精度更小的一种公式

  平均用户并发数:C=n/10

  峰值用户并发数:C›≈r*C 

  其中,r值一般取2—3.这种方法要求不太严格,只有很少数据支持分析的性能测试中使用

4.2吞吐量

单位时间内系统处理客户请求的数量

从业务角度来说,访问人数/天or处理的业务数/小时来衡量(PV,UV)‘

从网络角度来说,字节数/天来考察网络流量

对于交互式应用,吞吐量指标反映服务器承受的压力,在容量规划测试中,吞吐量世各很重要的指标,因为它能说明系统级别的负载能力

web系统的性能测试中,吞吐量指标可以在两个方面发挥作用

1.协助设计性能测试场景,以及衡量性能测试场景是否达到预期的设计目标

2.协助分析性能瓶颈

3.没有遇到瓶颈之前,吞吐量和并发用户之间存在的古纳西可以用下面的公式表达:

  F=N(vu)*R/T

F表示吞吐量,N表示VU的个数,R表示每个VU发送的请求(点击)数量,T表示性能测试所用的时间

不同并发用户数量情况下,对同一系统施加相同的吞吐量,很可能得到不同结果

PS:大部分性能测试中,单击数(Hits)指客户端发出的HTTP的请求数量,而不是指用户在页面上的一次单击事件。

比如:一次单击事件请求页面A,页面A包含3张图片和一个框架(Frame),则这次单击共产生了5个Hits(包括对页面A本身的请求) 

4.3性能计数器

描述服务器或者操作系统性能的一些数据指标,作用为监控和分析。分析系统可扩展性,进行性能瓶颈的定位时,计数器取值非常关键

相关指标:资源利用率,系统各种资源的使用情况

4.4思考时间

休眠时间:用户操作每个请求的间隔时间

体现在脚本中,就是操作之间放一个Think函数,使脚本在执行两个操作之间等待一段时间

公式F=N(vu)*R/T吞吐量是VU数量N,请求数R和时间T的函数,其中,R又可以用时间T和用户的思考时间Ts来计算:

  R=T/Ts   (请求数=时间/请求间隔时间)

推荐一个计算思考时间的方法:

1.首先计算出系统的并发用户数

2.统计出系统平均的吞吐量

3.统计出平均每用户发出的请求数量

4.根据上面的公式得出请求时间

原文链接:https://www.cnblogs.com/imyalost/p/10012867.html

 

标签:请求,系统,性能,基础,用户,并发,吞吐量,随笔
From: https://www.cnblogs.com/testcodell/p/17064546.html

相关文章

  • Python基础总复习
    Python基础总复习计算机基础数据类型流程控制字符编码文件操作可迭代对象、迭代器对象、生成器对象异常捕获Python基础之函数Python基础之模块Python基础之面......
  • Python基础之面向对象
    目录Python基础之面向对象一、面向对象之类与对象1.类与对象的创建以及调用2.对象独有的数据和功能二、动静态方法 在类体中定义函数的三种方式1.类中直接定义函数默认绑......
  • Python语言基础—定义变量与数据类型
    希望本阶段内容可以帮助大家学好Python基础,详情可以关注上方Python专栏!文章目录​​系列文章目录​​​​一、变量的作用​​​​二、定义变量​​​​2.1标识符​​​​2.......
  • Python语言基础—注释的作用及分类
    希望本阶段内容可以帮助大家学好Python基础,详情可以关注上方Python专栏!文章目录​​系列文章目录​​​​一、注释的作用​​​​二、注释的分类及语法​​​​三、总结​​......
  • Python语言基础—元组的应用与常见操作
    希望本阶段内容可以帮助大家学好Python基础,详情可以关注上方Python专栏!文章目录​​系列文章目录​​​​一、元组的应用场景​​​​二、定义元组​​​​三、元组的常见操......
  • 性能测试-第04天-掌握Jmeter直连数据库
    文章目录​​系列文章目录​​​​......
  • 2023牛客寒假基础集训营3-----E
    题目:E-公平守望的灯塔_2023牛客寒假算法基础集训营3(nowcoder.com)知识点:此题关键是考虑到用向量来做比较简单(1)向量(x,y)和向量(-y,x)的夹角为90°(因为点乘为0);......
  • 【Linux技术专题系列】「必备基础知识」一起探索和实践sftp配置之密钥方式登录
    FTP服务-vsftp协议实现我们常用的是FTP协议,主要是通过VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是VerySecureFTP从此名称可以看出来,编制者的初......
  • 【Linux技术专题系列】「必备基础知识」一起探索和实践sftp配置之密钥方式登录
    FTP服务-vsftp协议实现我们常用的是FTP协议,主要是通过VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是VerySecureFTP从此名称可以看出来,编制者的......
  • Spring Boot基础入门
    简介官网:https://spring.io/projects/spring-bootspringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。在以前的spring项......