所以我在别处读到,众所周知,LoadRunner 可以轻松地支持 2-4k 用户,但这并没有告诉我 LoadRunner 需要什么样的环境才能做到这一点。是否有任何关于各种负载所需的环境的指导?
例如,单个双核 2.4Ghz CPU、4GB RAM 是否可以轻松支持 1,000 个并发 vUser?如果我们在更大规模(比如 10,000 个用户)测试某些东西,我假设我们需要一个小型服务器场来生成?机器越少,网卡越多,会有什么影响?
所以我在别处读到,众所周知,LoadRunner 可以轻松地支持 2-4k 用户,但这并没有告诉我 LoadRunner 需要什么样的环境才能做到这一点。是否有任何关于各种负载所需的环境的指导?
例如,单个双核 2.4Ghz CPU、4GB RAM 是否可以轻松支持 1,000 个并发 vUser?如果我们在更大规模(比如 10,000 个用户)测试某些东西,我假设我们需要一个小型服务器场来生成?机器越少,网卡越多,会有什么影响?
已经有数十万用户范围内使用 loadrunner 运行的测试。您可以想象运行此类测试所需的基础架构上的后勤工作。
您关于服务器可以支持多少用户的问题实际上是一个相当复杂的问题。就像任何其他工程软件一样,每个虚拟用户都需要一部分资源来从有限的 CPU、磁盘、网络和 RAM 池中进行操作。因此,如果您的限制因素是虚拟用户的 CPU,那么简单地添加更多网卡不会给您带来任何好处。每个虚拟用户类型都有一个基本权重,然后您自己的开发和部署模型会更改该权重。我观察到一个负载生成器可以轻松地使用不到 50% 的所有已用资源来处理 1000 个 winsock 用户,然后对于一个网络数据流非常高、状态管理变量很多并且需要作为业务流程的一部分,与加载文件相关的一些磁盘活动。
如果您有不成熟的 loadrunner 用户,那么您几乎可以保证您运行的虚拟用户代码在资源利用率方面不会达到最佳状态,这可能会导致在给定主机上运行产生负载的预期只有 10%,因为在虚拟用户类型、开发和部署运行时设置中做出的选择。
我知道这不太可能是您想听到的答案,即“对于您的主机,您可以获得 5732 个虚拟用户类型 xfoo”,但是如果不将应用程序保持为常数并且用户的技能不存在,则没有有限的答案工具作为常数。然后,您可以从一个协议移动到另一个协议,从一个主机移动到另一个主机,并找出每个盒子可以获得多少用户。
理想情况下,每个虚拟用户需要大约 4 mb 的 ram 内存。所以您可以计算现有机器可以达到的数量。