加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 诊断“请求超时”HttpExceptions

发布时间:2020-12-15 18:55:15 所属栏目:asp.Net 来源:网络整理
导读:在StackOverflow上,我们每天都会看到一些“请求超时”异常。 事实: 请求超时是默认的90秒 仅在POST时发生 发布的数据是文本,通常较小(1KB),但可以范围为几KB 否在服务器变量中捕获表单数据 客户端UA是多样的:IE5.5 – 7,Firefox 3.0.5,iPhone,Chrome
在StackOverflow上,我们每天都会看到一些“请求超时”异常。

事实:

>请求超时是默认的90秒
>仅在POST时发生
>发布的数据是文本,通常较小(<1KB),但可以范围为几KB
>否在服务器变量中捕获表单数据
>客户端UA是多样的:IE5.5 – 7,Firefox 3.0.5,iPhone,Chrome
>客户位置多样化:英国,法国,美国 – NC,OH,NE,IN

我们测试了一个基于服务器的超时(即使用Thread.Sleep),并在异常日志中正确捕获所有表单变量 – 这使我们相信客户端在分配的时间发送请求有问题。

任何想法如何陷阱/调试这种情况是非常欢迎!

解决方法

我在使用小AJAX Web服务的生产服务器上有同样的问题。在我们的防火墙外部进行包捕获之后,我们发现对服务的POST是在两个TCP段中进行的,而第二个段从来没有到达我们。 (第一个包只包含头,第二个缺少包应该是json体)所以基本上IIS只是坐在那里等待剩余的POST。配置超时后,服务器向客户端发送RST数据包,并记录“请求超时”错误 – 这是正确的行为。

我们试图获得一个客户端没有运气,但在我们的情况下,这似乎是完全网络相关(或可能是一些“安全”软件,不喜欢的帖子的内容)。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读