jmeter - 仅与“吞吐量整形计时器”的一个采样器相关的示例在 Jmeter 中并没有给出太多想法
问题描述
我想在 Jmeter 中为我的项目使用吞吐量整形计时器,将“每秒请求数”设置为我想要的任何级别。我读了下面的文章。
(RPS:每秒请求数)
https://www.blazemeter.com/blog/using-jmeters-throughput-shaping-timer-plugin
它在现实生活中很有用,但还不够。任何人都不会只发送一个采样器。在我的项目中,我发送了很多采样器(http 请求),我想为所有采样器设置 RPS。
例如,如果有 20 个采样器,我想将 RPS 设置为 100。jmeter 现在做什么?我应该将所有采样器放在吞吐量整形计时器下还是什么?
我尝试了这种方法,但即使我增加线程数,我也无法达到这些数字(这是在文章中执行的)。
解决方案
JMeter Timers遵守JMeter 范围规则,因此添加一个 Timer 就足够了,它会将所需的吞吐量应用于其范围内的所有 Sampler。一个好的职位将是线程组的直接子级
吞吐量整形定时器本身只能暂停JMeter 线程以将执行速率限制为每秒给定的请求数。如果您没有足够的线程来执行所需的负载 - 它将无能为力,因此要么选择并发线程组并通过反馈函数将其连接到吞吐量整形计时器,要么增加线程,因此足以传递负载。
还要记住两个约束:
- JMeter 本身应该能够足够快地发送请求,因此请确保您遵循JMeter 最佳实践,并且 JMeter 有足够的空间来操作 CPU、RAM 等。
- 被测系统应该能够足够快地响应,因为 JMeter 将在发送下一个请求之前等待上一个响应,并且在响应时间增加的情况下,吞吐量将下降
推荐阅读
- python - 在 Python 中打印彩色文本不起作用。我究竟做错了什么?
- angular - 开角材料 Snackbar 在服务中
- php - 即使没有提交文件,PHP 多次上传也会运行循环
- c - qsort 在输出中给出奇怪的字符
- android - Nativescript 在 VS Code 中进行调试
- lisp - 在 LISP 中列出符号和 S 表达式
- css - Angular 7:ng-invalid vs :invalid
- c# - 如何根据项目中包含的 dll 或包在 .net 中创建条件指令?
- c - 使用指向字符串文字的指针数组的指针算术需要解释
- angular - 在 ngFor 中调用函数,结果将在元素中使用