我的工作场所通过有线互联网与有限的上行/下行连接,因此对于Web应用程序的负载测试我使用的是分布式方法:
这很好用 - 我可以从jmeter GUI启动远程线程执行,并在摘要报告中接收实时结果。
奇怪的是,我在SUT上施加实际负载的能力受到我的本地互联网连接(入站,下游)的限制。跟踪本地jmeter GUI和远程jmeter-server之间的链接,我可以看到从SUT到jmeter-server的所有HTTP流量都被发送到本地jmeter GUI 。因此,如果jmeter-server正在从SUT中检索1MB文件,那么它会将其发送到我的本地jmeter GUI(通过我的慢速Internet链接)。
应该怎么样?我期待只传输关键测量值(成功,延迟等)。
[PS:我知道我可以将我的测试计划划分到远程盒子并在无头jmeter中运行。但后来我没有看到实时结果...]
答案 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用户组: