http 503 錯誤:因暫時超載或臨時維護,您的 Web 服務器目前無法處理 HTTP 請求。
首先要找到造成503瓶頸的根本原因,有可能在數據庫、有可能是在磁盤IO、有可能是網絡連接數超過了處理能力。
在性能監視器中,web service > Current Connections 連接數在20000+,而數據庫連接和磁盤的IO都在合理范圍之內,所以,基本上就是連接數太大。PS:一般你看下你的網站訪問量也有一定認識,一般差的服務器受不住4萬以上的IP。
2w+的連接數,本身不算大,但是為何導致503的錯誤,且從性能監視器中單個request的執行時間也很短,這就說明IIS的應用程序池的處理能力跟不上。
在調整了應用程序池的線程數,從1增加到4(如下圖),隊列長度從1000增加到6000,而後,通過性能監視發現Current Connections 降到了1w以下,503的錯誤也就消失了。
PS:目前網絡上很多教程都是說建議WEB園使用默認的1,其實真的進程池處理不過來,而又實在縮短回收時間很低了,那麼修改進程數會是比較理想的解決方法。