• 性能测试基础


    发生性能事故的原因:

    • 并发的用户量突然增加
    • 性能测试做的不充分
    • 做性能测试时对并发预测的不准确

    性能测试的目的:

    • 熟知系统的性能,交付高质量的系统
    • 性能事故造成的后果都很严重,性能测试可以降低成本,降低风险

    性能测试分类:

    • 负载:找到系统的最大有效用户量(正常)
    • 压力:一定把系统测出问题来,找到系统的瓶颈(系统崩溃的节点)
    • 并发:找到系统某个功能的最大用户量(正常)
    • 稳定性:长时间运行时系统要满足客户的需要(正常)
    • 失效恢复测试:针对有冗余备份或者有负载均衡的系统进行的,当某个设备宕机后,系统能否正常的提供业务
    • 基准测试:把一组性能测试数据作为基准,然后修改软硬件环境,查看不同的软硬件环境对系统性能的影响
    • 配置测试:软件配置对系统性能的影响

    性能测试:就是通过一定的方式对被测系统按照一定的测试策略施加压力,获取系统的响应时间,吞吐量,TPS(每秒事务数),资源利用率等性能指标,检测系统上线后能否满足用户需求的过程

    • 工具:jmeter,loadrunner,locust
    • 测试策略:逐渐加压,突然加压
    • 压力:大量请求

    影响性能的原因;

    • 硬件:
      • CPU的处理能力
      • 内存的大小(内存泄漏,内存溢出,内存不足)
      • 硬盘(固态,机械硬盘)
      • 网卡(百兆和千兆)
    • 网络
      • 带宽
      • 网络稳定性
    • 被测系统
      • 算法
      • 代码深度(迭代,递归)
      • 资源回收与利用
      • 代码逻辑
    • 配置
      • JVM配置(栈,堆大小,垃圾回收机制)
      • 数据库连接池配置(最大连接数量,空闲连接时间)
      • 线程池
      • 消息队列配置
    • 数据库
      • 表中数据量大小(是否需要分库分表)
      • 慢SQL(关联查询,子查询)
      • 数据库索引(是否合理)
      • 表结构(是否合理,冷热数据[数据的冷和热取决与该字段的使用频率])
    • 中间件
      • 系统架构
      • 中间件的选择

    性能测试开展时间:功能稳定后开展

    相关术语:

    • 并发:

      • 侠义:一段时间内,大量用户请求同一个接口
      • 广义:一段时间内,大量的用户访问系统
    • 用户量:

      • 系统用户量:注册的用户

      • 在线用户量:登录系统的用户

      • 并发用户量:使用系统的用户

      • 在线用户n,平均并发用户C

        • C=nL/T
          
          • 1
        • n:一天内使用系统的用户量(比如100万用户)

        • L:平均一次使用的时长 (比如用户登录系统后平均操作4分钟)

        • T:系统一天中频繁使用的时长 比如白天12小时(忽略晚上用户量很少的时段)

    • 集合点:同步定时器

    • 事务:将多个操作绑在一起,同时成功或失败

    • TPS事务率:单位时间内处理事务的量

    • RPS请求率:单位时间内处理请求的量

    • QPS查询率:单位时间内处理查询的量

    • RT:响应时间

    • ART:平均响应时间

    • 2-5-8原则(根据响应时间不同区分)

    • 吞吐量:一次测试过程中,系统能处理的数据量

    • 吞吐率:单位时间内,系统能处理的数据量

    • 思考时间:模拟用户的思考时间(固定计时器,随机计时器)

    性能指标:

    响应时间RT,吞吐率,TRS事务率,并发用户数,资源的利用率(CPU,内存,网络,硬盘),异常率

    App系统额外的性能指标:耗电量,流量使用,弱网,启动时间,流畅度等

  • 相关阅读:
    高压配电安全监测系统:确保电力系统的稳定运行
    R-tree总结
    数据增强--深度学习
    C#项目版本号自定义位置自动向上增加小工具设计与实现
    【LeetCode热题100】--283.移动零
    rpc理解
    接口测试工具的实验,Postman、Swagger、knife4j(黑马头条)
    北京大学肖臻老师《区块链技术与应用》公开课笔记:比特币原理(三):分叉、匿名性
    【Go系列】 array、slice 和 map
    计算机毕业设计ssm餐饮管理系统uto0o系统+程序+源码+lw+远程部署
  • 原文地址:https://blog.csdn.net/hd_cash/article/details/126356578