所有jmeter请求只能通过haproxy转到一台服务器

时间:2012-08-16 19:55:57

标签: load-balancing jmeter haproxy

我正在使用Jmeter加载测试我的Web应用程序。我有两个Web服务器,我们正在使用HAProxy进行负载平衡。我的所有测试运行正常并且配置正确。我有三个jmeter远程客户端,所以我可以分发运行我的测试。我面临的问题是我的所有jmeter请求仅由其中一个Web服务器处理。由于某种原因,它不平衡,我有很多时间,而且响应时间很长。我已经四处寻找能够平衡这些要求的方法,但到目前为止我没有运气。有谁知道这种行为的原因是什么?如果您需要先了解我的环境,请告诉我,我会提供答案。

2 个答案:

答案 0 :(得分:1)

检查haproxy配置:

  • 它的负载均衡策略是什么,如果不是循环,它是基于ip源还是你的3个远程服务器可能常见的其他信息?

  • 你确定负载均衡正常吗?如果您可以添加一些有关Web服务器的信息以响应调试

  • ,请首先尝试使用浏览器进行测试

检查测试计划:

  • 你确定你的请求中没有硬编码的jessionid吗?

  • 您配置了多少线程?

答案 1 :(得分:0)

默认情况下,在您的Jmeter脚本中,HTTP请求"使用KeepAlive"标题选项已选中。

  

Keep-Alive是一个标头,用于维护之间的持久连接   客户端和服务器,防止连接中断   间歇。也称为HTTP keep-alive,它可以定义为a   相反,允许相同的TCP连接进行HTTP通信的方法   为每个新请求打开一个新连接。

这可能会导致所有请求都转到同一台服务器。只需取消选中该选项并保存,停止脚本并重新运行。