jmeter - 尝试命中 Post API 调用时,在 Jmeter 中出现“SocketException:连接重置”错误
问题描述
我正在尝试使用 JMeter 中的 HTTP Request Sampler 构建单个 API 请求,其中 API 有效负载中有超过 5000 行。检查请求有效负载和标头后,我尝试点击 JMeter,但它无法响应并抛出“SocketException:连接重置”错误。
浏览此博客https://www.xtivia.com/blog/fixing-jmeter-socket-errors/并尝试在按照此处所述进行请求的设置后将采样器中的实现更改为 HTTPClient4 -我正在获取 java.net .SocketException:使用 Jmeter 运行负载测试时连接重置异常。但是这些选项没有任何帮助。
相同的请求(没有任何更改)在 Postman 中运行良好并给出了预期的响应。请帮助解决此问题。
提前致谢。
解决方案
为了消除最终的“复制粘贴”问题,尝试使用 JMeter 的HTTP(S) 测试脚本记录器记录请求
- 启动 JMeter 的 HTTP(S) 测试脚本记录器
- 配置 Postman 以使用 JMeter 作为代理
- 将 JMeter 的证书导入 Postman
- 在 Postman 中运行您的请求
- JMeter 应该生成相关的HTTP Request采样器和HTTP Header Manager
- 您现在应该能够在 JMeter 中重放请求
更多信息:如何将 Postman API 测试转换为 JMeter 以进行缩放
如果出现问题:
将
javax.net.debug=all
行添加到system.properties文件将下一行添加到log4j2.xml文件
<Logger name="org.apache.http" level="debug" /> <Logger name="org.apache.http.wire" level="debug" />
您将在stdout和jmeter.log文件中看到更多故障排除信息。不幸的是,您的“连接重置”消息并没有对我们说太多
推荐阅读
- python - 根据字典绘制每个节点的大小
- android - 无法在 Linux Mint 上运行 ./gradlew --tasks:无法从 '11.0.6 确定 java 版本
- google-apps-script - 基于 Google 应用中的开关的变量
- java - 在 Android Studio(java) 中创建巨大的网格
- firebase - firebase 从远程部署托管(谷歌存储)
- ios - 如何访问 iOS App 生成的 Apple Pay 交易记录?
- html - JSFiddle:数据保护呢?
- javascript - 让 div 看起来更像是链接到的站点而不直接复制源代码?
- typescript - Knexfile.ts 不能使用 es 模块类型的导出
- sql - Rails 6中的数据库独立分组计数不同的“几天前”