我正在尝试使用 JMeter 创建负载测试。我有一个非常简单的测试计划:
- 包含所有标准的 HTTP Cookie 管理器、缓存管理器等。
- 包含具有一百万个有效用户名的 CSV 数据集配置。
- 它访问登录页面并提交用户名以获得授权。
- 然后它访问一个页面,该页面执行一些数据库请求并
显示结果。
我可以使用 80 个并发用户和 30 秒的启动时间成功运行它。如果我超出这个范围,事情就会开始恶化。大多数时候测试卡住了,我最终不得不用 Ctrl+C 取消它。如果我之后查看日志,我不会收到任何错误,看起来就像我在运行中中止了测试。我也尝试在 Taurus 中运行我的测试计划,但这也会冻结,如果我之后查看日志,则没有错误。
我已经完成了本指南中列出的大部分内容9 JMeter 负载测试“内存不足”失败的简单解决方案,但无论如何只是为了澄清一些事情:
- 我不在 GUI 中运行我的测试。
- 我在测试计划中没有听众。
- 我已将 Java 堆大小增加到 28 GB。
- 我获取嵌入式资源,但仅从域内获取。
- 托管网页的环境应该能够轻松处理 150 多个用户。
我使用的服务器是一个非常弱的虚拟机。当我运行测试并查看“顶部”时,平均负载为 20-30,考虑到服务器有 4 个内核,这显然太高了。但是当我在网上查看时,似乎人们很容易在普通笔记本电脑上运行 3-500 个并发用户的测试,所以这就是为什么我仍然怀疑还有其他错误。
服务器规格:
- 运行 Oracle Linux Server 7.5 的虚拟机
- 4 核 Intel Xeon E5-2650 v3 @ 2.3 GHz
- 32 GB 内存
有什么明显的我遗漏或者我的服务器太弱了吗?
提前致谢!此致