我在自配置测试装备上运行负载测试时收到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企业。
答案 0 :(得分:0)
问题陈述:从10个用户开始,每10秒添加10个用户,最多300个。因此,在29个增量后将有300个用户,这将需要29 * 10秒,即4分50秒。因此,测试将(尝试)在剩余的15分10秒内以300个用户的最大负载运行。
鉴于所有测试都通过了前2或3分钟加上错误消息,这表明您正在超载网络的某些部分。它可能是代理,可能是服务器,也可能是它们之间的连接。某些网络组件具有最大活动连接数,300个用户可能太多。
如此迅速地增加负载意味着您不清楚知道限制值是什么。采样率(10秒)似乎很高。在每个采样间隔,传输大量数据(即样本数据)并且可以淹没网络的部分。您应该查看代理和控制器的网络计数器,以及服务器(如果可用)。
我建议更改负载测试步骤,每30秒添加10个用户,因此大约需要15分钟才能达到300个用户。将采样率降低到每20秒也是值得的。