| 導購 | 订阅 | 在线投稿
分享
 
 
 

淺談IIS7.0 架構(2)

來源:互聯網  2008-08-14 23:36:11  評論

IIS 7 完整的組件分報圖

IIS 7的Windows PowerShell 管理環境

相信關注腳本編程或者是Exchange Server 2007的朋友都不會對Windows PowerShell感到陌生, Windows PowerShell是一個特爲系統管理員設計的Windows 命令行shell 。在這個 shell 中包括一個交互提示和一個可以獨立,或者聯合使用的腳本環境。對于熱愛腳本管理的IT PRo們Windows PowerShell必將讓他們愛不釋手。而對于IIS服務器,Windows PowerShell同樣可以提供全面的管理功能。

不過雖然PowerShell也可以管理運行在Windows Server 2003上的IIS6,但是IIS7才是特爲通過PowerShell的命令行來進行管理的。它包括了新的APPCMD功能,APPCMD通過標准的命令行界面來創建和配置站點,這樣的命令行工具的應用場景也非常常見,當用戶的環境中用到例如腳本管理的時候,APPCMD就將發揮非常其極大的優勢。

IS 7.0是包括在Windows Vista客戶機上的,該操作系統的家庭版本也帶有IIS 7.0(而不象IIS 5.1,只有在XP Professional上才有)。服務器的IIS 7.0版本將在今年稍後隨Windows Server2008服務器發布,將添加一堆額外的部署特性,包括更加豐富的主機支持,安全的FTP支持,以及內置的web farm部署支持等。

Web farm支持將是特別地酷,它將允許你在一個包含了運行一個服務器所需的所有編碼,配置,內容和密鑰的文件共享上部署你的web應用。然後你可以添加任意數目的無狀態,無配置的web服務器到一個web farm上,只需將它們指向那個文件共享,來動態裝載它們的配置設置(包括綁定,虛擬目錄,應用池設置等等)和應用內容即可。這使得在多個機器上擴縮一個應用簡直是小菜一碟,可避免使用複制方法來做配置和應用部署(只要把文件拷貝到文件共享上,web farm裏的所有機器就會馬上裝載變動過的文件)。

推出Windows Server2008服務器的Beta3版本支持go-live許可,所以你不久就能利用這個功能。我們已經在用IIS 7.0集群運行 Windows Server2008 了,所以你不會寂寞的!

淺談IIS7.0 架構(2)

Windows PowerShell 管理圖

IIS7.0 遷移

IIS7.0 遷移網站比IIS6.0更方便,因爲Apache Web server它最大的優勢就在于它的定制化管理,IIS7.0現在使用Apache概念,所以把站點的配置文件拷貝到另一台IIS7.0主機上即可以,詳情請了解上面《通過文本文件配置的IIS7》,《IIS 7的Windows PowerShell 管理環境》。

asp.net和IIS 7.0之集成

在早期的IIS版本中,開發人員需要編寫ISAPI擴展/過濾器來擴展服務器的功能。除了寫起來非常痛苦外,ISAPI在如何接入服務器以及允許開發人員定制方面也是非常有限。例如,你無法在ISAPI擴展中實現URL重寫代碼(注:ASP.NET是以ISAPI擴展的方式實現的)。假如你把運行時間長的代碼編寫成ISAPI過濾器的話,結果是你將占用web服務器的I/O線程(這就是我們不讓托管代碼在請求的過濾器執行階段運行的原因)。

我們在IIS7中對核心IIS處理引擎做的一個重大的架構級變動是通過一個新的模塊化的請求管道架構來促成極其豐富的擴展性。你現在可以通過與web服務器注冊一個HTTP擴展性模塊(HTTP Extensibility Module),在任意一個HTTP請求的生命周期的任何地方編寫代碼。這些擴展性模塊可以使用native的C++代碼或.NET托管代碼來編寫(你可以使用現有的ASP.NET System.Web.IHttpModule接口來實現)。

所有「內置」的IIS7功能(認證,授權,靜態文件供應,目錄清單支持,經典的ASP,記錄日志等),現在都是使用這個公開的模塊化的管道API來實現的。這意味著你可以除去這些IIS7「內置」功能的任意一個,而以你自己的實現來替換/擴展這些功能。

IIS 7.0上的ASP.NET本身也從以ISAPI的實現形式變成直接接入IIS7管道的模塊:

淺談IIS7.0 架構(2)

IIS6.0 和IIS7.0 比較圖

這帶來諸多好處:

1) 你現在可以對服務器的所有請求(例如, .htm,.php,.jsp文件)使用ASP.NET表單認證,成員/角色,以及任何其他特性。

2) 你現在可以輕松地重寫任何web請求的URL或者以種種有趣的方式對請求做改動。

3) 你可以使用VB或C#替換或擴展任何現有的IIS特性(例如,你可以除去內置的目錄清單模塊,接入你自己的模塊)。

這確實給.NET開發人員帶來了無窮多的擴展性機會。

IIS 7.0 六大新特性:

1)模塊化的網絡核心允許用戶增加和刪除特定的功能。如果要使用服務統計構件,僅需幾個模塊(不包括ISAPI)。

2)一個統一標准的HTTP管道,它對應于本地管理方面的應用程序。用戶可以對經典的ASP網頁使用基于窗體的認證系統。

3)用戶可以建立自己的IHttpModule以及IHttpHandlers,並且把它們插入到統一的管道。

4)新款分布式的xml設置系統,它利用了ASP.NET的設置系統的優點。

5)改善的診斷和問題解答機制,包括了新Runtime狀態以及跟蹤功能。

6)新型可擴展,面向任務的管理員用戶界面。

總而言之,IIS 7將爲Web管理員以及Web愛好者提供更加豐富,更加易用的管理工具。在新的IIS7中,無論是管理方面還是安全方面都得到了全新的設計,而從用戶群的角度上講,利用IIS7, 個人用戶可以更快,更簡便的建立自己的站點,而企業用戶則可以更加全面,更加安全的維護和管理自己的WEB環境。隨著Windows Server2008的日益臨近,相信有關IIS7管理的相關介紹也會越來越多,究竟新版本有沒有帶給我們實質的變革,還是只是一個IIS服務器功能的增強,讓我們拭目以待吧。

   IIS 7 完整的組件分報圖   IIS 7的Windows PowerShell 管理環境   相信關注腳本編程或者是Exchange Server 2007的朋友都不會對Windows PowerShell感到陌生, Windows PowerShell是一個特爲系統管理員設計的Windows 命令行shell 。在這個 shell 中包括一個交互提示和一個可以獨立,或者聯合使用的腳本環境。對于熱愛腳本管理的IT PRo們Windows PowerShell必將讓他們愛不釋手。而對于IIS服務器,Windows PowerShell同樣可以提供全面的管理功能。   不過雖然PowerShell也可以管理運行在Windows Server 2003上的IIS6,但是IIS7才是特爲通過PowerShell的命令行來進行管理的。它包括了新的APPCMD功能,APPCMD通過標准的命令行界面來創建和配置站點,這樣的命令行工具的應用場景也非常常見,當用戶的環境中用到例如腳本管理的時候,APPCMD就將發揮非常其極大的優勢。   IS 7.0是包括在Windows Vista客戶機上的,該操作系統的家庭版本也帶有IIS 7.0(而不象IIS 5.1,只有在XP Professional上才有)。服務器的IIS 7.0版本將在今年稍後隨Windows Server2008服務器發布,將添加一堆額外的部署特性,包括更加豐富的主機支持,安全的FTP支持,以及內置的web farm部署支持等。   Web farm支持將是特別地酷,它將允許你在一個包含了運行一個服務器所需的所有編碼,配置,內容和密鑰的文件共享上部署你的web應用。然後你可以添加任意數目的無狀態,無配置的web服務器到一個web farm上,只需將它們指向那個文件共享,來動態裝載它們的配置設置(包括綁定,虛擬目錄,應用池設置等等)和應用內容即可。這使得在多個機器上擴縮一個應用簡直是小菜一碟,可避免使用複制方法來做配置和應用部署(只要把文件拷貝到文件共享上,web farm裏的所有機器就會馬上裝載變動過的文件)。   推出Windows Server2008服務器的Beta3版本支持go-live許可,所以你不久就能利用這個功能。我們已經在用IIS 7.0集群運行 Windows Server2008 了,所以你不會寂寞的!   [url=/bbs/detail_1846243.html][img]http://image.wangchao.net.cn/it/1323397994128.jpg[/img][/url]    Windows PowerShell 管理圖   IIS7.0 遷移   IIS7.0 遷移網站比IIS6.0更方便,因爲Apache Web server它最大的優勢就在于它的定制化管理,IIS7.0現在使用Apache概念,所以把站點的配置文件拷貝到另一台IIS7.0主機上即可以,詳情請了解上面《通過文本文件配置的IIS7》,《IIS 7的Windows PowerShell 管理環境》。   asp.net和IIS 7.0之集成   在早期的IIS版本中,開發人員需要編寫ISAPI擴展/過濾器來擴展服務器的功能。除了寫起來非常痛苦外,ISAPI在如何接入服務器以及允許開發人員定制方面也是非常有限。例如,你無法在ISAPI擴展中實現URL重寫代碼(注:ASP.NET是以ISAPI擴展的方式實現的)。假如你把運行時間長的代碼編寫成ISAPI過濾器的話,結果是你將占用web服務器的I/O線程(這就是我們不讓托管代碼在請求的過濾器執行階段運行的原因)。   我們在IIS7中對核心IIS處理引擎做的一個重大的架構級變動是通過一個新的模塊化的請求管道架構來促成極其豐富的擴展性。你現在可以通過與web服務器注冊一個HTTP擴展性模塊(HTTP Extensibility Module),在任意一個HTTP請求的生命周期的任何地方編寫代碼。這些擴展性模塊可以使用native的C++代碼或.NET托管代碼來編寫(你可以使用現有的ASP.NET System.Web.IHttpModule接口來實現)。   所有「內置」的IIS7功能(認證,授權,靜態文件供應,目錄清單支持,經典的ASP,記錄日志等),現在都是使用這個公開的模塊化的管道API來實現的。這意味著你可以除去這些IIS7「內置」功能的任意一個,而以你自己的實現來替換/擴展這些功能。   IIS 7.0上的ASP.NET本身也從以ISAPI的實現形式變成直接接入IIS7管道的模塊:   [url=/bbs/detail_1846243.html][img]http://image.wangchao.net.cn/it/1323397994394.jpg[/img][/url]    IIS6.0 和IIS7.0 比較圖   這帶來諸多好處:   1) 你現在可以對服務器的所有請求(例如, .htm,.php,.jsp文件)使用ASP.NET表單認證,成員/角色,以及任何其他特性。   2) 你現在可以輕松地重寫任何web請求的URL或者以種種有趣的方式對請求做改動。   3) 你可以使用VB或C#替換或擴展任何現有的IIS特性(例如,你可以除去內置的目錄清單模塊,接入你自己的模塊)。   這確實給.NET開發人員帶來了無窮多的擴展性機會。   IIS 7.0 六大新特性:   1)模塊化的網絡核心允許用戶增加和刪除特定的功能。如果要使用服務統計構件,僅需幾個模塊(不包括ISAPI)。   2)一個統一標准的HTTP管道,它對應于本地管理方面的應用程序。用戶可以對經典的ASP網頁使用基于窗體的認證系統。   3)用戶可以建立自己的IHttpModule以及IHttpHandlers,並且把它們插入到統一的管道。   4)新款分布式的xml設置系統,它利用了ASP.NET的設置系統的優點。   5)改善的診斷和問題解答機制,包括了新Runtime狀態以及跟蹤功能。   6)新型可擴展,面向任務的管理員用戶界面。   總而言之,IIS 7將爲Web管理員以及Web愛好者提供更加豐富,更加易用的管理工具。在新的IIS7中,無論是管理方面還是安全方面都得到了全新的設計,而從用戶群的角度上講,利用IIS7, 個人用戶可以更快,更簡便的建立自己的站點,而企業用戶則可以更加全面,更加安全的維護和管理自己的WEB環境。隨著Windows Server2008的日益臨近,相信有關IIS7管理的相關介紹也會越來越多,究竟新版本有沒有帶給我們實質的變革,還是只是一個IIS服務器功能的增強,讓我們拭目以待吧。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有