使用Self Provisioned测试装置运行负载测试时出现套接字异常

时间:2017-11-09 12:37:22

标签: visual-studio azure performance-testing load-testing webtest

我在自配置测试装备上运行负载测试时收到Socket Exception。

我从本地计算机触发代理计算机(自配置测试装备)中的负载测试。

注意:对于前2到3分钟的测试迭代正在通过,之后我们将获得Socket异常。

以下是错误消息:

  

连接尝试失败,因为连接方没有   在一段时间后正确回应,或建立连接   失败,因为连接的主机无法响应。

以下是堆栈跟踪详细信息:

  

在System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)at at   System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure,   插座s4,插座s6,插座& socket,IPAddress&地址,   ConnectSocketState状态,IAsyncResult asyncResult,Exception&   例外)

运行时间 - 20分钟 采样率 - 10秒
预热持续时间10秒
使用的代理商数量 - 2
装载模式:
初始载荷 - 10用户 最大用户数 - 300
步骤持续时间 - 10秒
步骤用户数 - 10

虽然通过更改上面的值我仍然以相同的方式获得异常。

我正在使用Visual Studio 2015企业。

1 个答案:

答案 0 :(得分:0)

问题陈述:从10个用户开始,每10秒添加10个用户,最多300个。因此,在29个增量后将有300个用户,这将需要29 * 10秒,即4分50秒。因此,测试将(尝试)在剩余的15分10秒内以300个用户的最大负载运行。

鉴于所有测试都通过了前2或3分钟加上错误消息,这表明您正在超载网络的某些部分。它可能是代理,可能是服务器,也可能是它们之间的连接。某些网络组件具有最大活动连接数,300个用户可能太多。

如此迅速地增加负载意味着您​​不清楚知道限制值是什么。采样率(10秒)似乎很高。在每个采样间隔,传输大量数据(即样本数据)并且可以淹没网络的部分。您应该查看代理和控制器的网络计数器,以及服务器(如果可用)。

我建议更改负载测试步骤,每30秒添加10个用户,因此大约需要15分钟才能达到300个用户。将采样率降低到每20秒也是值得的。