远程jmeter-server将所有输出发送到控制jmeter实例

时间:2010-10-13 09:29:59

标签: distributed jmeter load-testing

我的工作场所通过有线互联网与有限的上行/下行连接,因此对于Web应用程序的负载测试我使用的是分布式方法:

  • jmeter-server(v2.4)的一个实例正在一个具有正确互联网连接的远程linux盒子上运行。
  • 控制jmeter GUI(也是2.4)正在我的桌面上运行。
  • 两者通过VPN连接。
  • SUT是托管在另一个数据中心的Web应用程序。

这很好用 - 我可以从jmeter GUI启动远程线程执行,并在摘要报告中接收实时结果。

奇怪的是,我在SUT上施加实际负载的能力受到我的本地互联网连接(入站,下游)的限制。跟踪本地jmeter GUI和远程jmeter-server之间的链接,我可以看到从SUT到jmeter-server的所有HTTP流量都被发送到本地jmeter GUI 。因此,如果jmeter-server正在从SUT中检索1MB文件,那么它会将其发送到我的本地jmeter GUI(通过我的慢速Internet链接)。

应该怎么样?我期待只传输关键测量值(成功,延迟等)。

[PS:我知道我可以将我的测试计划划分到远程盒子并在无头jmeter中运行。但后来我没有看到实时结果...]

3 个答案:

答案 0 :(得分:3)

这可能是因为您在jmeter脚本中有“查看树结果”。这告诉服务器将所有响应发送回主服务器,以便您可以查看它们。这将迅速填满你的带宽并且是内存密集型的。尝试禁用脚本中的所有侦听器,并且只有“查看聚合结果”。

高负荷时,您对个别结果不感兴趣。如果使用ssl隧道,也无需在数据中心打开防火墙。我在博客中记录了这一点,因为我无法在网上找到一个简单的步骤,你可能也想在http://rolfje.com/2012/02/16/distributed-jmeter-through-vpn-and-ssl/

检查一下

答案 1 :(得分:0)

我建议您将结果写入文件。在执行此操作之前,您可以选择执行选择/取消选择结果保存配置,方法是单击配置按钮和/或选中写入成功/错误以进行记录。通过取消选择结果采样器数据,保存响应消息等,您可以减少发送到控制台的数据量。

答案 2 :(得分:0)

THINK 你设置它的方式,Jmeter的本地实例和遥控器同时运行脚本,因此流量被定向到你的本地盒子。

我发现更有效的方法是远程操作运行JMeter的机器。然后一切都在适当的机器本地,我不必担心瓶颈。

我建议使用一个简单的数据写入器元素保存到REMOTE linux盒子上的文件中。

在图形用户界面中,您仍然可以只收集汇总报告,以便密切关注正在发生的事情。

希望这会有所帮助。如果没有,我建议发布到JMeter用户组:

http://jmeter.512774.n5.nabble.com/