关于WebService的操作超时问题

在做WS时候,这种现象我也经常碰到,服务器端也没发现什么异常现象,客户端调用WebService出现超时408,后续访问基本就一直是超时,即使重启程序也不行,除非用IE访问一下那个WebService(也出现大半天后重新恢复OK的情况)

刚开始还以为是超时时间设置得太短,于是产生下面的代码来修改配置文件

Web.config配置文件中设置http请求运行时限:
<system.web>  
<httpRuntime maxRequestLength="102400" executionTimeout="720" />
</system.web> 

折腾半天,后来到MS网站来找到如下原因:

症状:试图访问第三方 Web 服务器上的网站时您可能会在 30 秒延迟后遇到下列症状之一:

  • 您会收到一个空白页。
  • 您会收到 HTTP 错误 408 错误消息。
  • 您会收到一个 HTTP 错误 409 错误消息。
原因:

Microsoft Internet 安全性和加速 ISA Server 2000 用作 Web 代理,则可能会出现此问题。 当通过 ISA 服务器发送 HTTP POST ISA 服务器充当 Web 代理时 ISA 服务器将 POST 拆分为两个 TCP 段中。 第一段包含标头。 第二段的 POST 包含数据。 Web 服务器可能响应第一个段之前接收和处理第二段。

解决方案:

要解决此问题,获得最新的 service pack,ISA Server 2000。

下载地址:http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=319378&kbln=zh-cn

原来是补丁的问题。又被MS整了一次!


posted @ 2009-11-27 09:23  Repository  阅读(1392)  评论(0编辑  收藏  举报