我目前正在对应用程序进行性能测试。我们需要测试并发用户数(例如 300)。我们正在使用 Stepping Thread 组并且它工作正常..
考试时间约 38 分钟。在某些时候,当服务器内存过载时,内存会被清理,并且在这段时间内重新启动需要 10 到 20 秒,我们收到 502 - Bad Gateway 响应..
我们有将近 6 个模块(每个都在事务控制器中)并且每个控制器有近 20 到 30 个 api 调用)
我只是想在我们第一次遇到 502 时暂停 20 秒.. 可以这样做吗?我可以使用 If 控制器,但我无法添加所有 20 个调用,因为之前的示例还可以,这是耗时的过程。有没有其他办法?
我会检查 PostProcessor 中的 ResponseCodes,如果它是 502 Bad Gateway,我会使用 Java Tread 和 Jmeter Api 使当前线程进入睡眠状态
JMeterThread getThread() 来自 JMeterContext。
JMeterContext jmctx = JMeterContextService.getContext();
JMeterThread currentThread = jmctx.getThread();
currentThread.sleep(20000);
我不确定,currentThread.sleep(20000);
因为我需要检查 JMeterThread 是否从 Java Thread 继承了 sleep()。
在本地检查。更多示例在这里:https : //www.programcreek.com/java-api-examples/?api=org.apache.jmeter.threads.JMeterContext
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句