首页 新闻 会员 周边 捐助

iis无法在80端口新建连接

0
悬赏园豆:30 [已解决问题] 解决于 2014-10-10 09:33

上次写了 “非常怪异的服务器网络问题,请有经验的朋友帮忙看下”这篇文章后,得到大家的帮助,让问题范围变少,非常感谢大家!

问题的现象是:我使用Connection:keep-alive的连接不断的访问测试页面,测试页面没有问题。

                    通过在firefox上安装modify header插件将Connection修改为close然后连接不断的访问测试页面,测试页面过一段时间就会出现"unable to connect"的错误。

                    出现这个错误的时候页面很快就会返回,而不像503错误的时候要等待一段时间才返回。

        测试页面一个是asp.net页面,一个是静态文件。两个会同时出现问题。

这个说明服务器在出现问题的时候无法创建新的连接来响应请求。


为了进一步缩小问题的范围:
我通过在服务器上访问127.0.0.1来测试,还是出现上面的问题,这个基本上可以排除是网络引起的问题了,因为127.0.0.1不需要经过网卡。
 

这样基本上可以确定是程序或者IIS的问题了。

为此我为网站添加了两个“主机头”,用了8080端口。我同时通过127.0.0.1和127.0.0.1:8080端口访问测试页面:

发现8080端口一直都没有出现问题,而80端口还是出现跟上面一样的问题。

这证明IIS无法在80端口创建更多的连接来响应请求

 

我初步判断跟负载会有关系,为此我新建了一个计划任务,在凌晨3:00钟的时候自动打开firefox浏览器,然后自动通过80和8080商品访问测试页面:

今天早上发现8080端口一直没有问题,而80端口在早上07:09:48的时候出现“Unable to connect”的情况。

以前一般在半小时以内就会出现问题,这个测试用了4个小时才出现问题。这说明这个问题跟负载确实有关。

 

请大家帮忙分析一下,在什么样的情况下会引起这种现象,感激不尽!我快被这个问题折磨疯了。

我之前碰到程序的问题大部分都是引起CPU过高,而不会出现无法建立连接的情况。

这次CPU什么的都很正常,事件查看器里面和iis log以及httperr里面一直没有任何相关信息,让人无从下手。

我们有一个网站之前有大量访问淘宝API,后来我禁用此功能后还是出现此问题。其他的对外链接就是访问新浪微博和腾讯微博,以及支付宝和快钱等网关了。

Ray Wu的主页 Ray Wu | 菜鸟二级 | 园豆:205
提问于:2011-10-11 11:47
< >
分享
最佳答案
0

可以通过Perfmon监视下80端口下的连接数.

比对下80和8080在配置上有什么差别,包括所使用的应用程序池的配置差别.

收获园豆:30
Launcher | 高人七级 |园豆:45050 | 2011-10-11 13:21

这个是同一个程序,使用的不同的主机头。配置肯定是一模一样的

Ray Wu | 园豆:205 (菜鸟二级) | 2011-10-11 13:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册