首页 > 解决方案 > Jmeter:套件中的某些请求出现 502 bad gateway 错误

问题描述

我在 Jmeter 中创建了一个性能测试套件。该套件包含一个线程组: 线程属性: 线程数: 100 加速周期: 5 循环计数: 1 在每次迭代时清除缓存和 cookie。

线程组有 30 个采样器(30 个页面的 HTTP 请求),每个采样器都有“查看结果树”和“查看表中的结果”侦听器。

有了这个,我正在运行测试套件。

问题:对于某些线程上的某些请求,我收到“502 响应”。

我是性能测试和 Jmeter 的新手。请让我知道在这种情况下获得 502 的原因是什么,我该如何解决。

标签: jmeterperformance-testingweb-performancebad-gatewaythreadgroup

解决方案


所有HTTP 状态代码 5xx都是服务器错误,这意味着您无法从 JMeter 的角度“解决”它们。

根据描述,特定的 HTTP 状态代码 502 表示“错误网关”:

超文本传输​​协议 (HTTP)502 Bad Gateway服务器错误响应代码表示服务器在充当网关或代理时从上游服务器接收到无效响应。

注意:网关可能指的是网络中的不同事物,502 错误通常不是您可以修复的,但需要 Web 服务器或您尝试访问的代理进行修复。

因此,为了“解决”它,您需要检查您的应用程序和中间件日志,看看问题的根本原因是什么。

如果它仅在 100 个用户的负载下发生并且在较少的线程数量下无法重现,则表明您的应用程序过载,因此无法正确响应某些请求。因此,您可以将其报告为性能瓶颈

一个好主意是监控被测系统以测量 CPU、RAM、网络、磁盘使用情况等,因为原因可能很简单,因为缺乏资源,可以使用JMeter PerfMon 插件来完成

如果机器没有超载但您收到此错误,则意味着被测系统未正确配置高负载或在某处使用效率低下的算法,您可以通过查看分析器工具APM工具来发现幕后情况输出


推荐阅读