请建议使用jmeter

时间:2017-08-03 07:29:28

标签: jmeter performance-testing

现在我正在使用Windows机器运行性能测试,其中有6000个用户以下是Windows机器的详细信息。

视窗
内存:32GB
CPU:8芯
(在具有三台机器的分布式系统中执行)

现在我们计划在10000个用户的Linux环境中运行测试。我是Linux系统的新手, 请建议我在Linux中使用哪种配置进行此测试。

2 个答案:

答案 0 :(得分:3)

最有可能的是,你拥有与Linux机器相同的硬件规格,你应该能够启动至少与Windows上一样多的用户,因为JMeter对于底层操作系统一无所知,因为它在{ {3}}。

一般情况下,除了您之外没有人可以回答,因为虚拟用户的数量因许多因素而异(操作系统和JVM配置,测试性质,请求数量,请求大小,Java Virtual Machine,{{ 3}},pre processors等)

方法应该是:

  1. 确保您关注post-processors
  2. 确保您已为JMeter引擎监控基线操作系统运行状况指标(您可以使用assertions
  3. 从1个虚拟用户开始,逐步增加负载,同时关注CPU,RAM,交换,磁盘和网络使用情况。一旦这些指标中的任何一个超过合理的阈值(比如最大可用容量的90%),就停止测试,并在此阶段提及活跃用户的数量(例如使用JMeter Best Practices
  4. 这是您可以在特定此测试中针对特定此计算机模拟的用户数量。如果您更改测试或主机 - 您将需要重新进行测量。
  5. 有关详细说明,请参阅JMeter PerfMon Plugin for that文章。

答案 1 :(得分:0)

每个虚拟用户从CPU,磁盘,内存和网络的有限资源池中消耗了多少资源?

您希望避免任何超过80%的CPU,或者您将快速进入指令排队,超过30%的网络上的以太网冲突和重新传输,任何冒险在内存和您的锁上进行大量交换的虚拟用户进程/读/写等待超过磁盘寻道时间150%你停止等待磁盘。由于定时器内部的延迟,这导致更长的定时记录。

我知道,不是你想要的答案。构建到虚拟用户中的每个业务流程都需要执行不同数量的资源,因此没有可靠的方法来建议您可以在主机上获取任何类型的X而无需了解主机的资源池和资源占用情况。虚拟用户。此外,测试人员的成熟程度越低,他们就越不成熟。由于日志记录,内存使用,与缓存相关的服务器配置等方面的不良做法导致资源上的资源受到攻击......

至少有三个负载生成器。作为旁注,您可能需要考虑将其中一个负载生成器池用于控制目的,因为这有助于您了解任何负载生成器对您的计时记录施加的延迟。只需在负载生成器池中包含一个相同硬件的负载生成器,但只执行每个脚本类型的单个虚拟用户。如果您的控制和非控制生成器的虚拟用户以相同的速率降级,那么您可以确信共同的外部源(被测应用程序)是主要影响因素。但是,如果您尝试在主机上放置尽可能多的用户,那么您经常会发现控制组和非控制组报告的性能因资源依赖性而不同,这会依赖于超额订阅主机上的计时记录。当一个不喜欢你的结果的人想要责备测试而不是接受那个婴儿实际上是丑陋时,可以考虑加强你的测试并提供备份。