zoukankan      html  css  js  c++  java
  • JMeter压测上对于并发的认识误区

    1、误区
    在JMeter压测过程中,我们通常认为1s内100的并发量(即:QPS为100)的设置如下:

    此时,没有再添加额外的控制器。上述中的参数设置解释:

    Number of Threads(users): 启用的并发线程个数

    Ramp0up Period(in seconds):在多少秒之内将上述并发的线程启动起来

    Loop Count:控制循环次数

    说明:

    一个常见的误解,认为Number of Threads(users)设置为100,Ramp-Up Period(in seconds)设置为1,就是每秒发起100个请求量(
    错误)。

    2、解决方法:
    添加Constant Throughput Timer(常数吞吐量定时器),该定时器可以方便地控制给定的取样器发送请求的吞吐量。

    Delay before each affected sampleer下的

     Target throughput(in samples per minute)设置的值为6000(由于单位是一分钟,如果要求QPS为100,则该值设置为60*100=6000)

    Calculate Throughput based on的选项有5个(这里我选择all active threads),分别是:

    1)This thread only:控制每个线程的吞吐量,选择这种模式时,总的吞吐量为设置的target Throughput 乘以改线程的数量。

    2)all active threads:设置的target Throughput 将分配在每个活跃线程上,每个活跃线程在上次运行结束后等待合理的时间再次运行。活跃线程指同一时刻同时运行的线程。

    3)all active threads in current thread group:设置的target Throughput将分配在当前线程组的每一个活跃线程上,当测试计划中只有一个线程时,改选项和all active threads选项的效果完全相同。

    4)all active threads(shared):与all active threads的选项基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程上运行一次结束后等待合理的时间后再次运行。

    5)all active threads in current thread group(shared):与all active threads in current thread group 基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程的上一次运行结束后等待合理的时间再次运行。

    1、QPS
    QPS Queries Per Second 是每秒查询率 ,是一台服务器 每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内 所处理流量多少的衡量标准, 即每秒的响应请求数,也即是最大吞吐能力。

    2、TPS
    TPS Transactions Per Second 也就是事务数/秒。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,

    3、QPS和TPS区别

    个人理解如下:

    1、Tps即每秒处理事务数,包括了

    用户请求服务器

    服务器自己的内部处理

    服务器返回给用户



    学而不思则罔,思而不学则殆
  • 相关阅读:
    《Think in Java》(十四)类型信息
    《Think in Java》(十三)字符串
    《Think in Java》(十二)通过异常处理错误
    《Think in Java》(十七)容器深入研究
    《Think in Java》(十一)持有对象
    集合框架概览
    Gulp 自动化构建过程
    自动化打包 CSS
    更新 Node 稳定版本命令
    mac 命令行打开vscode
  • 原文地址:https://www.cnblogs.com/linyu51/p/14578029.html
Copyright © 2011-2022 走看看