2016-07-15 122 views
2

我在Azure Web服务上使用JMeter运行负载测试。 我使用4个实例在S2上扩展我的服务,并运行带有500个线程的JMeter 4实例。Azure上的负载测试

它开始非常好,但过了一段时间后调用开始失败,并给予超时错误(HTTP状态:500)。

我已经检查了azure上的HTTP请求队列,发现它在第二个实例中非常高,两个实例非常低

请帮我成功我的负载测试。

回答

1

我假设您正在使用Azure应用服务。如果您检查应用程序的设置,您会注意到ARR的实例相关性将默认启用。一个简单的解释:

ARR聪明地跟踪连接用户,给他们一个特殊的cookie(称为亲和cookie),它允许它在随后的请求中知道他们正在与哪个服务器实例通话。这样,我们可以确定,一旦客户端与特定服务器实例建立会话,只要他的会话处于活动状态,它就会继续与同一服务器通话。

这是会话敏感的应用的一个重要特征,但如果不是你的话,那么你可以放心地将其禁用,以提高您的实例之间的负载均衡,避免像你所描述的情况下一个。

Disabling ARR’s Instance Affinity in Windows Azure Web Sites