微軟IIS 8新特征:CPU與SSL
微軟互聯網信息服務(IIS)的每個版本都像是小說系列的一部分,這部小說都是隔幾年發一本,但精彩程度證明是值得等待的。
IIS8將隨Windows Server 8的beta版本發布。IIS8的新功能旨在將大規模Web服務器聚集起來。但是在眾多功能中一個很好的效果在于怎樣分撥更小的服務器甚至單獨的服務器。
目錄
- CPU節流:下一代
- SSL改進
- FTP登錄限制和動態IP的限制
- 多核擴展性和NUMA感知
- 網頁接口
- 結束語
CPU節流:下一代
IIS7具有CPU節流功能,可以防止無規則的網站占據太多的CPU. 可惜,IIS7過于孤注一擲,這使得它并沒有想象中的那么有用。
首先,當你要給網站進行節流設置,***的有效的節流方式就是在一段持續的時間內,結束網站的全部進程 。你可以設置CPU的閾值和時間長度,但這意味著這個網站在這段時間內完全癱瘓。沒有任何一種方法能讓一個站點在任何時間配置IIS并且只用了處理器X(或所有處理器)90%的CPU。
IIS 7的CPU節流特點是孤注一擲的:你要么停止進程要么不采取任何行動
第二,IIS 7的CPU節流是和給定的應用池綁定的。 如果你每一個網站都有一個單獨的池,這個不太糟糕,如果以這樣的方式放置CPU核心也可以。(即使是單核,對低CPU的網站來說也行。) 但是如果你有多個網站共享相同的應用程序池,一旦其中的一個網站的CPU節流出現問題,那么全部的網站都會掉線。
為了解決以上所有的問題,IIS 8在CPU節流工作工程中增加了兩個新的動作:
Throttle和Throttle under load,Throttle控制對于一個給定工作進程的CPU,和任何該進程產生的子進程。Throttle允許網站使用盡可能多的CPU,但是如果這個進程和其他進程競爭CPU的話,Throttle將會對此進程進行節流。
這樣可以實行節流并且不會關閉所有的進程,并且在多用戶的環境中增加了靈活性。你可以并行多個網站,無論有沒有為它們的工作進程設定明確的處理器關系,不會使它們互相影響。
IIS 8的另一個新功能是應用初始化模塊,它允許一個站點接受頁面請求和回應友好的訊息,同時網站代碼仍被加速。這個功能可以阻止在重新編輯收藏夾的時候用戶點爆瀏覽器上的刷新按鈕。
SSL改進
我一直都不喜歡IIS處理SSL的方式。“笨拙的”“麻煩的”是我用來形容在IIS中添加和管理SSL證書這一整個過程中的兩個最不刻薄的形容詞。幸好,IIS 8 的SSL處理中,具備了三個主要的新改進。
- 集中的證書管理。IIS 7 強迫你在每個IIS實例中輸入對應的證書,如果你正管理整個公司的服務器資源,這是一件很令人頭疼的事情。IIS 8 可以幫你創建一個核心證書存儲區CCS。 這樣,所有的公司授權證書就可以存放在一個單獨的位置。證書文件的名字可以用于自動映射和綁定此證書到域。通過這種方式還可以建立多重域的證書。(只需將證書多重復制并重新命名)
- 服務器名識別支持。不久之前我自己發現,在多個網站共享一個IP地址并且都使用主機標題的情況下,在服務器上安裝SSI是一件多么困難和痛苦的事情。一種名叫服務器名識別的新技術允許那些只能通過主機標題訪問的網站上使用SSI,但是它同時需要服務器和客戶端的支持。IIS 8修復了“服務器”端的方程式,最近的一些瀏覽器都支持這一功能。
- 可擴展性。由于在證書的加載和管理方式上的改進,現在支持SSL的網站在測量時更加高效,你可以在相同的硬件上運行更多的證書(成千上百的)。同樣也需要注意,IIS處理的配置文件(*.config)已經被重新制作成相同的模式。
【編輯推薦】