zoukankan      html  css  js  c++  java
  • jmeter 测试某网页最大并发用户数;

    在jmeter中,提到m并发,你可能马上想到线程数设置为m;

    调节服务器压力的是rps,即每秒请求数;rps由线程数,循环次数,ramp-up time调节;

    问题:

    有一个页面,需要测试一下最大支持多少用户并发?

    此时需计算的是最大用户并发数,强调的是同时操作,也可以理解为同时发起请求;

    针对这个问题,我们可以通过rps定时器或阶梯加压线程组测试每秒最大的请求数;

    在平衡状态下,并发数=RPS*响应时间;可参考https://help.aliyun.com/product/29260.html?spm=a2c4g.11186623.6.540.1d4411a4GB0RBd

    a)使用jp@gc - Throughput Shaping Timer(吞吐量成形计时器,调节rps的定时器);

    设置线程组中线程数为50,ramp-up时间为1s,永远循环;同时在请求下面加rps定时间,rps由1增加到400/s;测试最终运行时间取 线程组运行时间 与 定时器时间的最小值;

     查看运行后的结果,发现HPS增长到140之后,稳定了十几秒,随后HPS平均在100左右;

    该HTTP请求是本人阿里云服务器上部署的项目;

     TPS上升到48/s稳定了十几秒,然后TPS平均在30/s左右;

     响应时间基本在3s以内;

    稳定情况下,最大rps约为140/s,响应时间为1.6s,最大并发=140*1.6=224;可以理解为只要启动224个线程就可以在1s内满足140/s的rps压力值;

    线程组中线程数改为100,其它保存不变;rps和tps数值大致也是一样的;

     

     

     b)使用阶梯加压线程组

     

     

     

    上述得出结论, tps=48/s,最大并发=rps*rt=140*1.6=224;可以理解为只要启动224个线程就可以在1s内满足140/s的rps压力值;

    下面可以来验证一下,线程组的线程数设置为224,其它值可随意,(如,设置定时60s,循环次数设置为100,因为并发数=rps*响应时间 是在平衡状态下得出的结论,所以运行时间不能太短)

     

     

     

     

    ==================================可更改请求内容,简单判断是网络问题还是服务器======================

     

     

    越努力,越幸运!!! good good study,day day up!!!
  • 相关阅读:
    事务
    一、python 基础之基础语法
    二、python 中五种常用的数据类型
    三、python函数详解
    四、 面向对象(一)
    五、面向对象(二)——继承与重写
    六、异常处理、日志打印、文件操作
    scrapy(一):基础用法
    # scrapy(二):get请求
    scrapy(三):post请求
  • 原文地址:https://www.cnblogs.com/canglongdao/p/12606952.html
Copyright © 2011-2022 走看看