当前位置: 首页 > 图文教程 > 网站运营 > 建站经验 > 剖析Service Unavailable的原因

建站经验
网站改版的几点参考
BT网站新技术潮流:一些值得注意的事件
检测网站是否宕机的免费工具
国外域名注册商name.com和Godaddy对比
Myspace陷入绝望是默多克对互联网缺乏了解
域名停止解析 如何恢复域名的正常解析
个人网站所面对的问题和难题:竞争与生存
独立IP和共享IP 独立IP对SEO的友好
MyDomain免费域名DNS解析服务使用教程
网页设计工作中最能有效提升客户目标的部分
注册欺骗性网址每年为谷歌创收5亿美元
阿里巴巴从赖启兴手里成功仲裁回12个争议域名
域名投资半年后总结的域名投资心得
地方社区电子商务化案例和运营模式分析
预测个人站长现场备案会给网站行业带来的影响
国外主机测评 选择海外主机站长参考
互联网抄袭现状,原创博客如何应对被抄袭
马云收购万网取消代理推出的促销政策
Google Analytics电子商务追踪功能:追踪代码的定制
个人办网站实行实名制 小网站被淘汰出局

建站经验 中的 剖析Service Unavailable的原因


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-26   浏览: 59 ::
收藏到网摘: n/a

Service Unavailable

一、如果出现“Service Unavailable”的提示,刷新几下又可以访问。

出现这种情况是由于您的网站超过了iis限制造成的

由于2003的操作系统在提示IIS过多时并非像2000系统提示“链接人数过多”,而是提示"ServiceUnavailable",出现这种情况是由于网站超过了系统资源限制造成的,主要是程序占用资源太多。

比如同样是100人在线的论坛,雷傲论坛所占的资源就是PW论坛所占资源的10倍以上;另外,一些死循环程序,或者不优化的程序都会占用太多的系统资源,而系统资源明显是有限的。不过WINDOWS2003的操作系统,各网站之间是以独立进程运行的,不会相互影响。

如果一个网站的程序占资源太多或者发生太多的错误,系统日志就会提示:“应用程序池'xxx'被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误,或者提示:应用程序池'xxx'超过了其作业限制设置。这时,访问这个网站就会提示:ServiceUnavailable。一般系统会在30秒左右恢复正常,多刷新几次就能正常访问了。

另外,如果你的网站当前访问人数过多,超过了系统的iis连接数限制,也会出现ServiceUnavailable的提示(win2k主机下出现连接过多就会提示:连接过多,请稍后再试;而win2003的主机刚直接提示:ServiceUnavailable)

二、没有限制IIS连接,还是遭遇Service Unavailable

多见于使用ACCESS数据库的网站

一般使用windows2003IIS6的用户可能这个问题一直正常的系统,突然有一个网站打不开了
提示:ServiceUnavailable但这个网站并没有限制IIS连接数。然后马上影响到了别的网站,不到一会,其他的网站也全变成了ServiceUnavailable
这是什么原因呢?
我们分析后可以知道,还是MS的老问题。ACCESS引擎当了。用服务器医生的文件医生修复,查看修复结果时会发现一些文件引起ACCESS引擎“灾难性故障”及“未将对象引用设置到对象的实例”的错误。通过文件医生修复后,系统才会恢复正常。

三、浏览一个WindowsSharePointServicesWeb站点时,提示:ServiceUnavailable

1.MicrosoftInternet信息服务(IIS)6.0中没有正确地配置用于虚拟服务器的应用程序池,就可能会发生此问题。

解决方案

要解决此问题,按照下列步骤操作:1.验证是否已为虚拟服务器配置了应用程序池。默认的应用程序池是MSSharePointPortalAppPool。

请按照下列步骤来确定虚拟服务器正在使用的应用程序池。

a.单击“开始”,指向“管理工具”,然后单击“Internet信息服务(IIS)管理器”。
b.展开“ServerName”,展开“Web站点”,右键单击虚拟服务器,然后单击“属性”。
c.单击“主目录”选项卡。为虚拟服务器配置的应用程序池列在“应用程序池”框中。
d.单击“确定”。

2.验证应用程序池帐户使用的密码是否正确。IIS不会自动轮询ActiveDirectory目录服务中的密码更改。如果应用程序池帐户是一个域帐户,其密码已过期,则在为此帐户重新指定一个新密码后,您可能会收到本文“症状”部分所描述的错误信息。

3.验证应用程序池帐户是服务器上的IIS_WPG组和STS_WPG组的成员。

4.重新启动IIS以回收应用程序池

ServiceUnavailable”出现的原因

ServiceUnavailable的出现一般是资源不足,如IIS、CPU或内存等。

我们的所有虚拟主机均不限制IIS,因此可以排除IIS不足。

我司所有服务器操作系统均为windows2003,有个很关键的东西就是“应用程序池”

一般情况下为30-50个站共用一个程序池,这个程序池可以简单理解为资源库,即这30-50个站共用这块资源。我们限定一个程序池的CPU占用为60%,内存使用为200M。

如果这个资源被其中一个站用完,则程序池就会停止,所有使用这个程序池的站就会出现“ServiceUnavailable”资源不足的提示,直到该程序池被重新启动。

大多数情况下,60%的CPU和200M内存完全足够使用;如果出现垃圾程序或遇到攻击,则可能出现CPU急速上升或内存大量使用,这个是大部分“ServiceUnavailable”出现的原因。从目前我们监测的情况看,大部分是CPU占用在90%-100%之间出现的。

1、出现“ServiceUnavailable”怎么办?

我们自主开发了一套专门监视并修复IIS的程序,每隔10分钟自动检查一次IIS,如果发现程序池停止,就会重新启动。因此一旦出现“ServiceUnavailable”,最多不超过10分钟,就会自动修复,大多数情况下只需要2-5分钟。其他大部分公司都没有监控程序,则只能手工修复,一般持续时间为2-6小时才能发现并启动。

2、频繁出现“ServiceUnavailable”怎么办?

如果频繁出现了这个提示,则表明其中一个和您共用资源的站出了问题,请联系我们的技术员进行排查。

3、出现“ServiceUnavailable”是服务器问题吗?

很多人都认为是服务器不稳定的问题,其实不然。如果是服务器问题,不会出现“ServiceUnavailable”的提示,而是直接瘫痪掉,连FTP也上不去。

出现这个是因为有站消耗了大量资源,服务器的资源始终是有限的,如果长期超过设置的值,则服务器会自动停止这个程序池,防止影响其他程序池的用户。