IIS7 應用程式池詳細解析

衣舞晨風發表於2015-08-02
在IIS 7中,新增一個應用程式或者單獨的網站,預設會自動新建一個對應的“應用程式池”,這也是IIS 7的一大特色。

在早期的IIS 5.0中,只有一個應用程式池的情況下,很容易造成“全軍覆沒,一榮俱損”。因為所有的網站(或者虛擬目錄下的應用程式)都“寄居”在一個“池”,當這個“池”崩潰了,所有的網站都杯具了。

後來的IIS 6中,有了“應用程式池”的概念,但是預設不會自動新增,IIS 管理員可以手動去新增,配置,這樣是的IIS 具有很強的隔離性。

應用程式池具有下列優點:

改進的伺服器和應用程式效能。對於佔用大量資源的應用程式,您可以將其分配給它們自己的應用程式池,以免影響其他應用程式的效能。

改進的應用程式可用性。如果一個應用程式池中的應用程式發生故障,將不會影響其他應用程式池中的應用程式。

改進的安全性。通過隔離應用程式,可以降低一個應用程式訪問其他應用程式資源的機率。

在 IIS 7 中,應用程式池有兩種執行模式:整合模式和經典模式。應用程式池模式會影響伺服器處理託管程式碼請求的方式。如果託管應用程式在採用整合模式的應用程式池中執行,伺服器將使用 IIS 和 ASP.NET 的整合請求處理管道來處理請求。但是,如果託管應用程式在採用經典模式的應用程式池中執行,伺服器會繼續通過 Aspnet_isapi.dll 路由託管程式碼請求,其處理請求的方式就像應用程式在 IIS 6.0 中執行一樣。

大多數託管應用程式應該都能在採用整合模式的應用程式池中成功執行,但為實現版本相容,有時也需要以經典模式執行。應該先對整合模式下執行的應用程式進行測試,以確定是否真的需要採用經典模式。使用IIS 7 部署asp.net mvc 應用程式時,只需要選擇“整合”即可,不需要像在IIS 6中繁瑣的配置(設定ISAPI對映,新增萬用字元...)

原文地址:http://www.cr173.com/html/18969_1.html

相關文章