最近有些客户的香港服务器中的网站打开就显示"Service Unavailable","Service Unavailable"的意思是占用服务器资源过多,那么这是什么原因造成的呢?小编整理了下,主要 出现这种情况是由于您的网站超过了系统资源限制造成的,主要是程序占用资源太多。程序占用资源太多的原因小编就一一为大家列举出来。
原因一.有一个或多个ACCESS数据库在多次读写过程中损坏,微软的MDAC系统在写入这个损坏的ACCESS文件时,ASP线程处于BLOCK状态,结果其他线程只能等待,IIS被死锁了,全部的CPU时间都消耗在DLLHOST(ASP进程)中。
参考解决办法:
压缩和修复我的数据库
下载数据库文件--[如果是.asp的扩展名,请改为.mdb的扩展名]--用ACCESS打开--选择工具--数据库实用工具--压缩和修复数据库--[改回.asp的扩展名]--上传覆盖原来数据库文件
原因二.注册了不良的Com组件,特别是用VB开发的ACTIVE X控件,可能导致占用内存使用量不断增长
参考解决办法:尽量减少或避免非官方或是客户要求的不必要的组件
原因三.多媒体等文件下载占用服务器带宽
参考解决办法:停止下载
原因四.程序问题
需要及时的关闭不再使用的数据库,以避免一直占用服务器资源
在conn.asp 连接数据库字符串语句中加入如下
sub endConnection()
conn.close
set conn=nothing
end sub
其它程序问题:把IE选项里 显示友好HTTP错误信息 的勾取消掉,再访问网站看出现什么错误信息,然后再调试
原因五.上传重要的数据库等文件更新,由于正处于受访问状态,可能导致瞬间占用率上升
一般此情况较少,若有出现此情况时,可能有必要先暂停站点,再作更新
原因六.ACCESS论坛大了以后就很容易出现数据库方面的问题,当你的论坛数据库在30M以上,帖子5万左右,可能就会出现数据库吃不消的情况
临时解决办法:定期删除多余的数据、压缩数据库,限制论坛灌水,甚至限制论坛注册。如果是动网论坛,可以使用论坛自带的分表储存功能,会有较好的效果
比较长远办法:更换论坛和数据库,一般都采用动网sql商业版本+MSSQL 的方案来解决
总之,造成香港服务器中的站点打开显示"Service Unavailable"的原因主要就是上述的六种,每次造成这样的原因客户就老是说我们的香港服务器有问题,不是他们的程序问题。如果是香港服务器的问题,那么别的客户怎么可以正常的访问。一旦是服务器的问题,那么整个服务器上的香港虚拟主机就会全部打不开的。
本文出自武林网:http://www.VeVb.com/help/news/983/