出现原因
Service Unavailable的出现一般是资源不足,如IIS、CPU或内存等,极少数情况下会因asp.net程序错误导致出现。
我们的所有虚拟主机均不限制IIS和CPU,因[1]此可以排除IIS和CPU。 我司所有服务器操作系统均为windows2003,有个很关键的东西就是“应用程序池” 一般情况下为多个站共用一个程序池,这个程序池可以简单理解为资源库,即这些站点共用这块资源;内存限制为500M物理内存(服务器为8G内存)。 如果这个资源被其中一个站用完,则程序池就会停止,所有使用这个程序池的站就会出现“Service Unavailable”的提示,直到该程序池被重新启动。 大多数情况下,500M内存完全足够使用;如果出现垃圾程序或遇到攻击,则可能出现CPU急速上升或内存大量使用,这是大部分“Service Unavailable”出现的原因。从目前我们监测的情况看,大部分是CPU占用在90%-100%之间出现的。