1:性能测试相关概念

1:技术手段

  并发测试:

      狭义:用户在同一时间内做同一件事情--秒杀测试(集合点)--1000用户集合之后同时点击某个按钮。

      广义:很多用户在同一时间同时操作不同的功能或混合场景(登录,下单,支付)

  负载测试:50-100-150用户或请求(1,2,4阶梯增压)不断的加压,找到TPS拐点(tps增量明显变小)      

  压力测试:

        1:稳定性压力测试

                1:维持tps高值(饱和值:最优tps的90%)持续一段时间运行

                     2:资源饱和(饱和cpu内存处于90%)持续一段时间运行

                目的:发现内存泄露出

          2:破坏性压力测试

                直接加压到导致系统崩溃快速暴露问题

 

          3:失效恢复测试

                目的用于验证部分系统发生故障时,整个系统是否能够继续让用户使用的能力

                破坏性压力测试后,服务器压力降低之后,即时恢复

                

          4:容量测试

                按线上真实业务比例分配进行测试

 

2:稳定的环境(性能测试准入条件):

      网络:带宽稳定,规避网络高峰期

 

3:jmeter配置

      1:日志

      日志设置:log.error级别(路径:Options(选项)--Log Level)

      查看结果数勾选仅日志错误:

      2:cookie(配置文件中设置cookie为true)

      CookieManager.save.cookies=true

      3:报告格式改为csv,因为命令行会报错

      

 

      4:快捷键(ctrl+0,1,2,3....)

      0:添加线程组  1:添加http请求  2:正则表达提取器   3:响应断言   4:固定定时器  9:查看结果树

      5:保持长连接(30秒)

                             jmeter配置

        1:配置文件设置httpclient4.idletimeout=30000,httpclient4.time_to_live=30000

        2:请求advanced选择HttpClient4

         

 

          3:请求勾选长链接

 

        4:本机注册表regedit-加keepAliveTime设置30

      6:cps:每秒网络传输速度(带宽值)

        (预期传输速度*1024)/8=cps            50m*1024/8=6400kb

 

6.准入检测(空载)

  JVM内存  cpu利用率(10%)  磁盘和内存总量都小于30%

                

7:性能指标(先确保没有error在进行测试,不然没有意义)

 1:每秒请求数:RPS(qps)

    jmeter能支持多少线程

    用户最大可用内存(进程查看)=MaxHeap堆内存(jmeter.bat设置)+xss(默认1m)*线程数         

              

 

    9g=1g(jmeter已设置的默认1024m,可以自己设置)+1m*线程数    线程数=8000

 2:每秒事务数:TPS(优化接近RPS)---服务器每秒处理的事务数

 3:响应时间--接口响应在1s内

    用户角度:浏览器加载   服务器响应  页面2次渲染

    压力机角度:tcp连接   服务器响应

  4:吞吐量

    一次性能测试中网络上传输数据的总和,反映系统的负载能力

  5:成功率

    不能低于98%,一般无线接近100%

   6: cpu:us+sy正常在50-70之间(持续)    太低:cpu浪费   太高:压力过载

  

   7: 内存:使用持续高于80%是有问题  (free -m)

 load:负载持续不能高于内核总数 (top下敲1查看内核总数)

    负载0.00+0.00+0.07<2

 

  8:带宽---不要消耗超过50%

 

 

 

二:jmeter基本配置

1:目录

backups:只要保存了,脚本都会存在该目录下。

bin:需要cmd去运行输入jmeter.bat,输入jmeter或双击运行都不会加载jmeter.properties文件,导致配置文件无效。
     ApacheJMeterTemporaryRootCA.crt--https证书,测试https接口必须有

extras:ant-jmeter-1.1.1.jar  ant包

 

jmeter性能测试原理---基于多线程,协议,场景

 

三:http代理抓包

 

posted @ 2022-01-17 17:43  观呼吸  阅读(103)  评论(0)    收藏  举报