zoukankan      html  css  js  c++  java
  • jmeter 固定吞吐量控制器 Constant Throughput Timer

    压测某个系统,多个交易同时压测时,交易之间存在占比关系,这时就需要控制每支交易的TPS,Constant Throughput Timer可实现该功能
    1.添加方式
    在这里插入图片描述
    2.元件介绍
    在这里插入图片描述
    Target throughput(in samples per minute):目标吞吐量(单位分钟),即每分钟执行多少次(TPM)
    Calculate Throughput based on(计算吞吐量策略):
    1、This thread only:仅对当前线程,也就是每个线程相互是不干扰的,都互相分开计算需要多少延迟时间(总吞吐量=Target throughput乘以线程数)
    2、All active threads:针对所有线程,把所有线程的吞吐量合在一起作为因子计算
    3、All active threads in current thread group:针对当前线程组中的所有线程
    4、All active threads(shared):线程延迟计算是基于任意一个线程上次运行的时间,也就是随便获取一个线程的运行时间来计算,既然是随机,结果就不一定准确,所以只能是努力控制吞吐量在某一个范围
    5、All active threads in current thread group (shared):在当前线程组中任取一个线程的上次运行时间来计算延时,与上面意思相近

    2、3和4、5的区别,大概是线程等待的结束信号不同。2、3是当前线程结束了,等待合理时间,就可以再启动运行。4、5是,等待所以线程的活跃线程都结束了,再等待合理时间再次运行。

    注:
    1.建议吞吐量控制器添加在线程组最后一个请求下
    2.建议All active threads in current thread group选择All active threads in current thread group
    3.当Target throughput(in samples per minute):n,
    Calculate Throughput based on选择All active threads in current thread group,若固定吞吐量控制器放在请求下,代表该请求的TPM为n,若放在事务控制器下,且事务控制器下的请求有3个,那么每个请求的TPM为n/3

    对此定时器的深度认识:

    1,这里的20 QPS应该是指Jmeter发送请求的QPS,而不是服务器处理的QPS;--因为假如我们以20 QPS的速度向服务器发送请求,但是服务器每秒最多只能处理8个请求,那么我们无论如何都无法测得服务器在20 QPS的情况下的性能数据;

    2、难点在于让Jmeter【稳定地】以20 QPS的速度向服务器发送请求

    参考:https://blog.csdn.net/weixin_43809249/article/details/88935206

  • 相关阅读:
    数组的typedef 和函数的typedef
    函数返回值当左值的问题
    C++中虚析构函数的作用
    word2013密钥
    子类父类步长问题
    函数重定义——重写———重载
    C++的成员初始化列表和构造函数体(以前未知)
    常引用
    项目开发中的字符串模型
    指针函数的++(极易犯错误)
  • 原文地址:https://www.cnblogs.com/hpzyang/p/13781788.html
Copyright © 2011-2022 走看看