【发布时间】:2011-04-22 01:16:57
【问题描述】:
我有一个非常多线程的 Windows 服务(同时有数百到数千个)。 这些线程扫描不同的机器并调用一个 Web 服务器的 WCF Web 服务。 最近我开始收到超时错误。让我困惑的是
请求通道超时,而 等待回复后 00:02:41.8806080。增加传递给调用的超时值 请求或增加 SendTimeout 绑定上的值。时间 分配给这个操作可能有 是较长超时的一部分。 服务器堆栈跟踪:.... 异常 在 [0] 处重新抛出:... HTTP 请求 到“http://XXX/XXX/MonitorService.svc” 已超过分配的超时时间 00:10:00. 分配给此操作的时间可能是一部分 更长的超时时间。在 System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException,HttpWebRequest 请求, HttpAbortReason abortReason)
我的问题是 7 分钟内发生了什么?是在客户端等待 10 分钟,但在 Web 服务器等待 2:41? 为什么会这样? 如果我同时从不同的线程调用一个网络服务数百次是吗 不知何故在客户端排队?甚至在到达 IIS 之前?
感谢您对此提供的任何帮助。提前非常感谢。
【问题讨论】: