jmeter分布式测试的好处,

时间:2017-04-18 06:13:42

标签: jmeter distributed

在我的笔记本电脑被冻结之前,我已经设法用JMeter和最多400个虚拟线程进行简单的测试。它有8千兆字节的RAM和一个处理器Intel Core i5 2.4 GHz。

然后我通过使用Oracle Virtual Box和主节点创建了两个从属节点,所有这些都在我的笔记本电脑中。我在非GUI模式下运行测试,并且在我的笔记本电脑被冻结之前我可以运行的最大虚拟线程数也是400,通过将200设置为JMX文件上的线程数(每个从设备200个线程使400个线程进入全部)

因此,如果我可以运行的最大线程数与单个机器以及两个从机和一个主机配置相同,这是节点从机配置的意义吗?它没有任何优势。我究竟做错了什么?可能是因为从节点是虚拟的而不是真节点?

另一方面,我获得的400个虚拟线程的.jtl文件权重为18兆字节,而JMeter的监听器无法读取其所有步骤。错误消息是

jmeter.save.CSVSaveService: Error parsing field 'bytes' at line 67515 java.lang.NumberFormatException: For input string: "text" "

那么我怎样才能看到大量线程测试的完整结果?这是RAM缺乏的问题还是JMeter的限制?

1 个答案:

答案 0 :(得分:0)

使用主从配置没有任何意义,因为您在单个主机上运行所有内容。鉴于您可以使用一台机器模拟400个虚拟用户,您应该能够通过添加一台机器来模拟400多个(假设它具有相同或相似的规格),所以它应该是这样的:

  • 1台机器 - 400
  • 2台机器 - 800
  • 3台机器 - 1200

但同样,distributed testing目标是在达到单个负载生成器计算机的限制并且未提供所需负载时扩展JMeter。在一台计算机上运行多个JMeter Server(从属)不会添加任何值。

另外,请确保您遵循9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure文章中有关调整JMeter引擎以获得最佳性能的建议,我预计Core i5将有超过400个虚拟用户使用8 GB RAM。