1

考虑登录用户的场景->导航到页面01->保持用户5分钟->注销用户

脚本如下:

  • 导航到主页
  • 用户已登录(通过仪表板上的某些文本进行登录验证的断言)
  • 仪表板出现
  • 导航到第 01 页(断言第 01 页内容)
  • 注销(添加了 5 分钟的恒定计时器和用于注销以验证主页被重定向的断言)

Step Up 线程配置一直保持这种方式:

步进线程组线程/加速配置

为了实现这个场景,分布式系统实现如下:

  • Master(我自己的机器 8 GB Ram 和 Core 2 Duo 处理器)
  • 2 台从机(每台 8 GB Ram 和 I7 和 Core 2 Duo 处理器)

  • 线程:jp@gc - 步进线程组

服务器配置如下:

  • 2 个 EC2 实例(每个 16 GB RAM)
  • 1 个负载均衡器
  • 1 个 RDS 实例

注意:实例在 60% CPU 使用率时自动缩放。

在非 GUI 模式下使用步进线程为 500 个并发用户执行脚本时,仪表板报告上出现以下错误列表

  • 504网关超时
  • 非 HTTP 响应代码:java.net.SocketException/非 HTTP 响应消息:连接重置
  • 注销失败的断言

有人可以帮我知道为什么会出现这些吗?当我检查负载平衡器 504/网关超时没有出现在那里?我试图跟踪这些错误,但无法弄清楚为什么会出现这些错误以及其他两个错误。当为 10 个用户执行相同的脚本时,GUI 模式下不会出现错误。

当为100-250 个并发用户执行相同的脚本时,它在没有上述错误时运行良好。

4

1 回答 1

0

如果 250 个虚拟用户没有出现问题,而 500 个虚拟用户出现了问题——这肯定是负载增加造成的瓶颈,你只需要找出原因。

  1. 确保将DNS 缓存管理器添加到您的测试计划中,否则您可能会遇到负载仅转到一台服务器的情况
  2. 设置对您的 EC2 实例的监控,以确保它们有足够的空间来运行 CPU、RAM、网络等。您可以为此使用Amazon CloudWatchJMeter PerfMon 插件
  3. 您可能希望在启用分析工具遥测的情况下重新运行测试- 这样您将能够查看应用程序花费大部分时间的位置
  4. 检查您的应用程序服务器、数据库等的配置,因为这可能是中间件的配置问题
  5. 请注意,根据 JMeter 最佳实践,您应该始终使用最新的 JMeter 版本,因此请考虑尽快迁移到 JMeter 5.0(或JMeter 下载页面上 提供的任何最新版本)。
于 2019-02-13T09:56:27.893 回答