这几天我们报务器一到访问高峰就报"SERVER IS TOO BUSY",要多刷新几次才能显示出来..访问量下降时能够自动恢复.
服务器配置:4CPU XEON 4G内存
装作系统:windows2003+iis5(正版)
高峰期一小时访问量:2000个独立IP,4W次的PV..
高峰期是内存和CPU都没有占满...
请各位高手帮忙...
小弟为了这事几个晚上都没有睡觉了..我们这行真的辛苦啊..我都快崩溃了

解决方案 »

  1.   


        一般来说,当你的IIS发生了诸如"HTTP:1001 Server is too busy"
    的错误时,是因为你的ASP程序中开了过多的Server.CreateObject请求
    ,然后每一个请求都需要排队等待直到他们确实被建立了为止。
    如果你的队列的最大长度为500的话,当队列中已经存在了499个请求时,
    这时如果第500个请求到达了,就会发生“Server is too busy”错误。
    那么怎么来使正在申请的请求最小化了,并且如何提高响应时间呢,
    下面是几个建议:
    1.尽量使用.HTM后缀的文件,避免使用.ASP(尤其是在那些有可能招成
    超负荷的条件的特殊事件时)。因为HTM不会障塞服务器同时能够得到最大的
    缓存性能。(有关这个的效率问题我曾经介绍过一篇文章,在精华区中)
    2.尽量在你的ASP中少使用Server.CreateObject
    3.严格限制你的ASP调用不在你服务器上的外部资源,例如你的资源在另外一台服务器上
    4.尽量优化你的网络性能和稳定性,例如增强你的后台的SQL Server数据库或则远程文件共享
    的局域网性能。
    5.尽量让每一个组件的执行速度快与调用它的速度.例如,一个组件一秒钟被调用了20次,
    那么它就必须在1/20秒的时间内执行完成,否则该组件将会阻塞。要知道,一个阻塞的
    组件将会导致你网站上所有的ASP崩溃
    6.每个礼拜都要监视你的网站的性能状态.因为单个能够产生阻塞的对象能够对你的整个网站产生
    很不好的影响。
      

  2.   

    google一把错误信息.1.你的服务器没有被攻击.
    2.你的应用程序资源是否及时释放.
      

  3.   

    这个都看了...楼上说是ASP中,不是.net的....
      

  4.   

    你來查看一下IIS日誌,看有無異常情況.
    另外,要保證你的程序有效的釋放了資源。
      

  5.   

    2000个独立IP,4W次的PV
    你的一个IP平均有20个PV?这个比例不太正常啊
      

  6.   

    我想资源是肯定釋放了的.因为高峰期一过,他就能恢副正常..被人攻击也不可能.因为机盲房里有防火墙.
    一个IP有20个PV.是因为他老是报"server is too busy",用户多刷新几次就能够显示正常..