IIS8將隨WindowsServer8的beta版本發布。IIS8的新功能旨在將大規模Web服務器聚集起來。但是在眾多功能中一個很好的效果在于怎樣分撥更小的服務器甚至單獨的服務器。
IIS8的FTP登錄限制和動態IP的限制
IIS8有一個理論:因為安全問題,微軟IIS8一直都有野蠻的試驗。他們不得不不斷地思考新的并且更加積極主動的方法來保護他們的服務器產品的安全。所以,在IIS8幫助中,有兩個新的IIS8安全特征為HTTP和FTP服務提供短期和長期IP地址阻塞。但是,沒有人把IP阻塞作為任何一種永久的安全解決方案。但是IIS8這個特點可以作為對付攻擊的一個權宜之策。
IIS8動態IP的限制允許你配置IIS8用于阻止超出在給定的時間內允許嘗試請求數量,或IIS8使用超過一定數目的并發請求的IP地址訪問。而且,拒絕連接不僅可以返回IIS7在這種情況下使用的標準403.6禁止錯誤。可以設置服務器返回401(未授權),403(禁止),404(未找到),或者僅僅終止HTTP連接,不返回錯誤。IIS8一個特殊的代理模式,也允許HTTP頭檢查X-Forwarded-For轉發頭,IIS8作為一種找到通信源的方法,IIS8可通過代理轉發。
FTP登錄嘗試限制功能可以給那些企圖登陸到FTP服務器的人們關上大門。一般的關閉周期是30秒,但是你可以隨自己的意愿設置,登陸次數也可以設置。這個工作稍微像tarpitting/graylisting系統用于避免垃圾郵件制作者淹沒郵件服務器:只有這些明顯的打擾會被推遲。
IIS8的多核擴展性和NUMA感知
我使用IIS8服務器處理過的大部分都是小事務,IIS8并與一小部分低流量的網站,IIS8共享它們所在的單核或雙核服務器上的空間。我清楚地了解,某些IIS8的安裝是縱橫交錯的事務:許多核或套接口,數以千兆字節內存和各種各樣的其它高端硬件功能,這些使IIS8系統管理員們痛苦并快樂著。
IIS8并不能長期的使某些高端功能得到最佳利用。就拿IIS8多核來說:根據微軟的說法是,增加IIS8更多的核帶來的一個問題就是:在一些IIS8安裝中,過一段時間就會損害IIS8的性能,“因為存儲同步成本重于額外核的利益。”換句話說,額外核的處理能力與這個核為了保持存儲同步的過高要求,相抵消了。
非一致性記憶體架構的(NUMA)認知,這一IIS8的新功能彌補了這一問題。NUMA服務器致力于特定處理器的具體物理內存領域,通過交叉開關矩陣或總線系統,IIS8來幫助處理器與非“本地”內存的處理器進行對話。被編寫的操作系統和軟件,這兩者都必須適當地利用NUMA,但包括像熱插拔失敗的存儲模型在內的利益,最重要的是,不要屈從于差的存儲架構方法,那樣就會損壞IIS8性能。
IIS8通過幾種不同的方式支持NUMA技術和多核比例運算:
工作負載分區。IIS8可以通過創建相同數量的工作進程,有NUMA節點池的工作進程,IIS8每個進程運行在其自己的節點——基本上這是“Web園”的做法。你也可以在IIS8中設置多個工作進程,并通過每個節點自動分配工作量。
節點優化。IIS8使用默認的方法,IIS8選擇一個節點,IIS8一個給定的工作進程啟動時,IIS8選擇一個具有最可用的內存,因為這通常會產生最好的結果。IIS8也可以默認讓Windows服務器自己作出這樣的決定,這是有用的,如果您在同一硬件上有其他運行的服務器級別的NUMA感知的運應用程序。
線程關聯。IIS8可以使用兩種方法的一種來弄清楚如何與NUMA節點配對的線程。“軟親和力”的方法使一個給定的線程切換到另一個NUMA節點,如果IIS8該節點有更多可分享的CPU。“硬親和力”的方法挑選一個線程的一個節點,并使它保留在那。
IIS8的網頁接口
這個長期發展的技術主要用于修復自HTTP成立以來就存在的一個重要的限制:你不可能保持真正的連接,在客戶端和服務器端之間進行實時全雙工的通訊。IIS8增加了網頁接口功能,但是在設置IIS8的時候,IIS8必須作為附件安裝成為“應用開發”的一部分(連帶ASP.NET4.5)。
盡管IIS8的許多新特征是明確地針對那些整體的主機服務器公司或者大規模的多核設置而設計的,IIS8也需要呼吁在其他層次的人們,如果IIS8在任何時候將正在使用的服務器升級至多核心—即使從雙核升級到4核,將會有大量的新IIS8特點使用,這讓我很值得投資。