jmeter - 在 JMeter 中使用 Blazemeter HTTP2 采样器时出现 TimeoutException
问题描述
我在 JMeter 中使用 Blazemeter HTTP2 JMeter Sampler 并遇到以下问题。
021-03-07 09:29:03,996 ERROR c.b.j.h.s.HTTP2SampleResult: Error while await for response
java.util.concurrent.TimeoutException: null
at java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1886) ~[?:?]
at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2021) ~[?:?]
at com.blazemeter.jmeter.http2.sampler.HTTP2Connection.awaitResponses(HTTP2Connection.java:171) ~[jmeter-bzm-http2-1.6.1.jar:?]
at com.blazemeter.jmeter.http2.sampler.HTTP2Request.lambda$waitAllResponses$1(HTTP2Request.java:585) ~[jmeter-bzm-http2-1.6.1.jar:?]
at java.util.HashMap$Values.forEach(HashMap.java:976) [?:?]
at com.blazemeter.jmeter.http2.sampler.HTTP2Request.waitAllResponses(HTTP2Request.java:583) [jmeter-bzm-http2-1.6.1.jar:?]
at com.blazemeter.jmeter.http2.sampler.HTTP2Request.threadFinished(HTTP2Request.java:546) [jmeter-bzm-http2-1.6.1.jar:?]
at org.apache.jmeter.threads.JMeterThread$ThreadListenerTraverser.addNode(JMeterThread.java:775) [ApacheJMeter_core.jar:5.3]
at org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:993) [jorphan.jar:5.3]
at org.apache.jorphan.collections.HashTree.traverse(HashTree.java:976) [jorphan.jar:5.3]
at org.apache.jmeter.threads.JMeterThread.threadFinished(JMeterThread.java:742) [ApacheJMeter_core.jar:5.3]
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:328) [ApacheJMeter_core.jar:5.3]
at java.lang.Thread.run(Thread.java:834) [?:?]
仅当有效负载约为 250kb 并且每 30 秒执行约 120 到 400 个请求时才会发生这种情况。在这种情况下,大约 70% 的请求会失败!更少的请求可以 100% 正常工作。大约 10kb 有效负载的 500 个请求也可以正常工作。是否设置了超时没有区别。
解决方案
我不认为这是插件或 JMeter 问题,很可能您的服务器超载,因此无法及时提供有效响应。
- 检查您的服务器日志
- 确保服务器在 CPU、RAM、网络等方面有足够的空间运行。可以使用 ie JMeter PerfMon Plugin来完成
- 考虑添加一个加速期并使用 ie Transactions per Second图表关联成功和失败的请求,这可能是您遇到瓶颈的情况,您需要精确识别时间戳和有效负载大小/请求数量导致问题
推荐阅读
- swift - 首次启动时 WKWebView 的可访问性
- php - WordPress中的分屏视差
- python - 在数组中查找不等于给定点的最近点
- python - 我的脚本正在将最后一项写入 csv [python 和 selenium]
- python-3.x - 如何结合 glob 和 pd.read_csv
- excel - 如何在 vba 中修剪邮政编码的结尾?只需要前 5 个数字。需要通过列并修剪这些数字
- amazon-web-services - 为什么我无法修复我的不合规 AWS Config 规则?
- nlp - 使用两个输入特征的 TF-IDF 余弦距离的文本相似性
- typescript - Vue 3 App 的 Typescript 类型是什么?
- java - Eclipse 的 javaCompletionProposalComputer 的内容辅助不起作用