401 未授权 - 此请求需要 HTTP 身份验证 - Payara/Glassfish



初始上下文:

我们正在开发 Web Aplication Server 并将其部署在Payara Server 4.1.2.173中。最小稳定性测试完美通过,MVP 工作完美,但为了改进系统的性能测试,我们在JMeter (3.2(中创建了不同的测试用例,模拟前端正常活动并向服务器发出所有必要的请求。

问题:

当JMeter开始发出请求REST(JAX-RS(时,一切正常,但突然一些请求(用户(返回以下错误响应:

<h1>HTTP Status 401 - Unauthorized</h1>
<hr/>
<p>
<b>type</b> Status report</p><p>
<b>message</b>Unauthorized</p><p>
<b>description</b>This request requires HTTP authentication.</p>
<hr/>

这很奇怪,因为错误是随机出现的,显然不是因为并发问题。

任何想法可能是什么问题?谢谢

经过一些研究,我发现当卷线程请求增加时,JMeter 在向 Http 请求添加动态标头令牌时有一些困难。在我的场景中,我正在执行以下操作:

  1. 发出 HTTP 登录请求
  2. 在服务器中生成令牌会话
  3. JMeter 从响应中给出令牌,我应用后处理器将其编码为 Base64 并保存到 JMeter 系统变量。
  4. 在下一个 HTTP 请求中,我将 HTTP 标头配置组件中的令牌添加为基本授权

当线程量增加(大约 150个(时,服务器返回错误 401。尽管 JMeter 显示令牌包含在标头中,但在实际请求中没有它的迹象。这种行为是随机出现的,没有共同的原因......

溶液:

我们决定将令牌会话添加为 CSV 数据集的一部分 - 配置文件,JMeter 能够管理所有请求,而不会出现任何罕见的 401 错误。

最新更新