enter image description here-我想使用JMeter测试MQTT以进行负载测试。
- 我尝试使用JMeter打开/关闭设备,以使MQTT正常工作,但我需要使用enter image description here说明在连接设备时如何计算斜升期(秒)。
例如,线程数(用户)=10斜升期(秒)=5循环计数=1
我使用了斜升周期(秒)的公式=每个线程需要0.5秒 * 10个用户=5秒,这是斜升周期(秒)MQTT的正确公式,用于装置的开关命令
enter image description here-我想使用JMeter测试MQTT以进行负载测试。
我使用了斜升周期(秒)的公式=每个线程需要0.5秒 * 10个用户=5秒,这是斜升周期(秒)MQTT的正确公式,用于装置的开关命令
1条答案
按热度按时间ui7jx7zq1#
没有“正确”的公式。
官方用户手册上说:
加速时间告诉JMeter需要多长时间“加速”到所选的全部线程数。如果使用10个线程,加速时间为100秒,那么JMeter将花费100秒的时间来启动并运行所有10个线程。(100/10)秒。如果有30个线程,上升期为120秒,则每个后续线程将延迟4秒。
斜升需要足够长,以避免在测试开始时工作负载过大,并且要足够短,以使最后一个线程在第一个线程完成之前开始运行(除非有人希望这样)。
从斜升=线程数开始,并根据需要向上或向下调整。
主要思想是逐渐增加负载,因为如果10个模拟设备出现问题,您只能声明代理无法支持10个设备,您将无法知道saturation point在哪里,bottleneck在哪里,并且无法将增加的负载与响应时间和吞吐量等其他指标关联起来。
您可能还希望增加循环的数量,因为可能会出现以下情况:一些线程已经完成了工作并被关闭,而另一些线程尚未启动(除非这是您要寻找的行为)
更多信息:JMeter Ramp-Up Period: The Ultimate Guide