iis 6.0 新功能及與 .net 的整合
DESCRIPTION
IIS 6.0 新功能及與 .NET 的整合. 鄭淑芬 恆逸資訊. What’s new in IIS 6.0. 新的執行架構 可靠性 效能提昇 簡化管理 對 .NET 的支援. DLLHost.EXE. DLLHost.EXE. DLLHost.EXE. ISAPI Extensions. ISAPI Extensions. ISAPI Extensions. IIS 5.0 架構. INETINFO.EXE. ISAPI Filters and Extensions. Metabase. WinSock 2.0. User Mode. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/1.jpg)
IIS 6.0IIS 6.0 新功能及與新功能及與 .NET.NET 的整合的整合
鄭淑芬鄭淑芬恆逸資訊恆逸資訊
![Page 2: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/2.jpg)
What’s new in IIS 6.0What’s new in IIS 6.0 新的執行架構 可靠性 效能提昇 簡化管理 對 .NET 的支援
![Page 3: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/3.jpg)
INETINFO.EXE
Metabase
ISAPI Filters and Extensions
IIS 5.0 IIS 5.0 架構架構
TCP/IP
User Mode WinSock 2.0
Kernel Mode
DLLHost.EXE
ISAPI Extensions
DLLHost.EXE
ISAPI Extensions
DLLHost.EXE
ISAPI Extensions
![Page 4: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/4.jpg)
提昇效能及穩定性提昇效能及穩定性IISIIS的新架構的新架構 HTTP.SYS
kernel-mode HTTP Listener Web Admin Service (WAS)
user-mode 管理設定 / 應用程式 Application Pools 及 Worker Processes 的概念與
架構
![Page 5: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/5.jpg)
全新的全新的 IISIIS 架構架構
UserUser
KernelKernel
InetinfoInetinfo
FTP, SMTP,FTP, SMTP,及 及 NNTPNNTP
MetabaseMetabaseW3 CoreW3 Core
WASWASW3 CoreW3 CoreWorker Worker ProcessProcess
Web Web 應應用程式用程式
HTTP.SYSHTTP.SYS
Web ServerWeb Server
![Page 6: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/6.jpg)
優點優點 更可靠
區隔 Third-party 程式 每個 Web 應用程式可由一個或多個 Worker Processes 分擔處
理 Worker Process Recycling Worker Process Monitoring
更好的效能 Request 直接從
Kernel Mode 繞送到 Worker Process Web
Admin Service
HTTP.SYS Listener
Worker Process
Worker Process
Worker Process
Worker Process
![Page 7: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/7.jpg)
HTTP.SYSHTTP.SYS 它是…
Universal HTTP processor 永遠保持在執行狀態
更可靠 依名稱空間進行繞送 (routing) 要求佇列 (Request queue) 開發人員的禁地
更好的效能 Kernel-mode response cache URI-cache
![Page 8: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/8.jpg)
HTTP.SYSHTTP.SYS
TCP/IP
HTTP.SYS
Send Response
Response Cache
HTTP.SYS API
Listener
Namespace Mapper
HTTP Engine
HTTP Parser
Req
. Que
ue
Req
. Que
ue
Req
. Que
ue
REQUEST
![Page 9: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/9.jpg)
Web Admin Service (I)Web Admin Service (I) 管理應用程式
啟動 worker processes 管理 Application Pools
管理設定 向 HTTP.SYS 註冊網站及應用程式
![Page 10: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/10.jpg)
Web Admin Service (II)Web Admin Service (II) 定期進行資源回收
依時間、處理過的 Request 數、時間間隔、佔用的記憶體大小、強制回收
監視程式執行狀態 Pinging Crash Detection Rapid Fail Protection
Better debugging support Orphan worker process
如何設定…
![Page 11: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/11.jpg)
WASWAS
WAS – WAS – WebWeb Administrator Service Administrator Service
Co
nfi
g M
gr
Co
nfi
g M
gr
Ap
p P
oo
l M
gr
Ap
p P
oo
l M
gr
MetaBase.xmlMetaBase.xml
W3 CoreW3 CoreW3 CoreW3 CoreWorker Worker ProcessProcess
Web Web 應應用程式用程式
HTTP.SYSHTTP.SYS
kern
elke
rnel
use
ru
ser
![Page 12: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/12.jpg)
Application PoolsApplication Pools 何謂 Application Pool?
一組共享 Worker Processes 的 Web 應用程式 Process Boundary
新增 App pool 即定義新的 process boundary HTTP.SYS 依名稱空間將使用者要求引導至所對應
的行程 On-demand start
Web Gardens 在一個 App pool 中有多個 worker process
![Page 13: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/13.jpg)
Worker Process Isolation Worker Process Isolation ModeMode 架構架構
kernel
user
WA
SW
AS
HTTP.SYSHTTP.SYS
ISAPI Exts &ISAPI Exts &FiltersFilters
W3 CoreW3 Core
Worker Worker ProcessProcess
ISAPI Exts &ISAPI Exts &FiltersFilters
W3 CoreW3 Core
Web Web GardenGarden
ISAPI Exts &ISAPI Exts &FiltersFilters
Web Proc. Web Proc. Core DLLCore DLL
Web Web GardenGarden
ISAPI Exts &ISAPI Exts &FiltersFilters
Web Proc. Web Proc. Core DLLCore DLL
Web Web GardenGarden
ISAPI Exts &ISAPI Exts &FiltersFilters
W3 CoreW3 Core
Worker Worker ProcessProcess
App Pool (1) App Pool (2) App Pool (3)
![Page 14: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/14.jpg)
Application PoolApplication Pool
![Page 15: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/15.jpg)
Worker ProcessesWorker Processes 推動 Application Pool 運作的原動力 具體而微的 Web Server
涵蓋所有 W3SVC 功能 載入 ISAPI – filters 及 extensions
區隔 W3SVC 與 INETINFO.EXE
![Page 16: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/16.jpg)
深入深入 Worker ProcessWorker Process
處理 Request 回傳靜態網頁 啟動 ISAPI extension 或 ISAPI filter 執行 CGI
Worker processWorker process
ISAPI FiltersISAPI Filters
ISAPI ExtensionsISAPI Extensions
SingleSingleAppApp
W3WP.EXEW3WP.EXE
![Page 17: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/17.jpg)
WebWeb Garden Garden 一個 Application pool 指定多個 Worker processes
某個 worker processes 負載過重、 lock ,其它的 worker processes 可繼續處理其它的Requests
多 CPU 電腦 不同於 Web Farm
ISAPI FiltersISAPI Filters
ISAPI ExtensionsISAPI Extensions
MultipleMultipleAppsApps
MultipleMultipleAppsApps
MultipleMultipleAppsApps
W3WP.EXEW3WP.EXE
ISAPI FiltersISAPI Filters
ISAPI ExtensionsISAPI Extensions
MultipleMultipleAppsApps
MultipleMultipleAppsApps
MultipleMultipleAppsApps
Worker ProcessWorker Process
ISAPI FiltersISAPI Filters
ISAPI ExtensionsISAPI Extensions
MultipleMultipleAppsApps
MultipleMultipleAppsApps
MultipleMultipleAppsApps
![Page 18: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/18.jpg)
Worker Process Worker Process --Health monitoringHealth monitoring 監視 Worker processes
定期 ping worker processes WAS 與每個 worker process 維護一個 communication
channel
WA
SW
AS
Worker Worker ProcessProcess
ISAPI Exts &ISAPI Exts &FiltersFilters
W3 CoreW3 Core
Worker Worker ProcessProcess
ISAPI Exts &ISAPI Exts &FiltersFilters
W3 CoreW3 Core
Web Web GardenGarden
ISAPI Exts &ISAPI Exts &FiltersFilters
Web Proc. Web Proc. Core DLLCore DLL
Web Web GardenGarden
ISAPI Exts &ISAPI Exts &FiltersFilters
Web Proc. Web Proc. Core DLLCore DLL
WebWeb GGardenarden
ISAPI Exts &ISAPI Exts &FiltersFilters
W3 CoreW3 Core
![Page 19: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/19.jpg)
How they work together?How they work together?
HTTP.SYSHTTP.SYS 、、 WASWAS 、、 ApplicatioApplication Pooln Pool 、、 Worker Processes…Worker Processes…
![Page 20: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/20.jpg)
MetaBase.xmlMetaBase.xmlWASWAS
Co
nfi
g M
gr
Co
nfi
g M
gr
Ap
p P
oo
l M
gr
Ap
p P
oo
l M
gr
UserUser
KernelKernel
HTTP.SYSHTTP.SYS
Web ServerWeb ServerWorkerWorkerProcessProcessWorkerWorker
ProcessProcess
WorkerWorkerProcessProcess
處理處理 RequestRequestOn demand startOn demand start
![Page 21: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/21.jpg)
WorkerWorkerProcessProcess
WASWAS
Co
nfi
g M
gr
Co
nfi
g M
gr
Ap
p P
oo
l M
gr
Ap
p P
oo
l M
gr
UserUser
KernelKernel
HTTP.SYSHTTP.SYS
Web ServerWeb Server
WorkerWorkerProcessProcessWorkerWorker
ProcessProcess
管理管理
WorkerWorkerProcessProcess
ZZzzzzz…
WorkerWorkerProcessProcessWorkerWorker
ProcessProcess
Web Service Always Running!!!Web Service Always Running!!!
Web Web 永遠在執行狀態永遠在執行狀態 !!!!!!
![Page 22: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/22.jpg)
What’s new in IIS 6.0What’s new in IIS 6.0
新的執行架構 可靠性 效能提昇 簡化管理 對 .NET 的支援
![Page 23: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/23.jpg)
簡化管理簡化管理 XML-based 設定資訊 WMI Provider 更多的 Command-line 命令
![Page 24: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/24.jpg)
MetabaseMetabase 以階層式儲存 IIS 設定資訊
IIS 5.0 之前版本 : binary file MetaBase.bin
IIS 6.0 : 純文字的 XML 檔案 MetaBase.xml MBSchema.xml
XML 格式的好處 可直接以文字編輯器編輯 簡化錯誤復原手續 簡化設定、管理
與現有 ADSI 相容
![Page 25: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/25.jpg)
MetabaseMetabase
IIS 5.0IIS 5.0 架構架構
Admin Base Object (ABO)Admin Base Object (ABO)
Admin UIAdmin UI ADSIADSI
MetaBase.binMetaBase.bin
![Page 26: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/26.jpg)
MetabaseMetabase
IIS 6.0IIS 6.0 架構架構
Admin Base Object (ABO)Admin Base Object (ABO)
Admin UIAdmin UI ADSIADSI WMIWMI
MetaBase.xmlMetaBase.xml MBSchema.xmlMBSchema.xml
![Page 27: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/27.jpg)
XML-Based XML-Based 設定資訊設定資訊 Backup/Restore
ABO(Admin Base Objects) API 可從任一節點進行 Import/Export 密碼加密
Metabase History 執行時仍可編輯
![Page 28: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/28.jpg)
Edit-while-runningEdit-while-running
![Page 29: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/29.jpg)
WMI ProviderWMI Provider
目標 提供與 ADSI 相同等級的管理能力 支援擴充的 Schema
功能 類似 ADSI
Scriptable Objects 及其 methods
查詢 – 類似 SQL 的查詢方式 群組同類型的物件
![Page 30: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/30.jpg)
命令列管理工具命令列管理工具 新增、刪除、啟動、停止 Web 或 FTP site
iisweb.vbs iisftp.vbs
新增、刪除、 查詢虛擬目錄 iisvdir.vbs iisftdr.vbs
設定 IIS iiscnfg.vbs: 匯出 / 匯入 XML 設定檔 iisback.vbs: 備份 / 復原設定
![Page 31: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/31.jpg)
IIS IIS 命令列管理工具命令列管理工具
![Page 32: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/32.jpg)
What’s new in IIS 6.0What’s new in IIS 6.0
新的執行架構 可靠性 效能提昇 簡化管理 對 .NET 的支援
![Page 33: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/33.jpg)
IIS6 – ProgrammabilityIIS6 – ProgrammabilityASP ImprovementsASP Improvements
Unicode Path support 支援 UTF-8 COM+ Services for ASP
ASP ThreadsCOM+ Queue
ASP Template Cache預設 250 templates 快取在記憶體中亦可快取在硬碟中ASP template 不需重新編譯
![Page 34: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/34.jpg)
對對 .NET.NET 的支援的支援 ASP.NET 執行環境設定
已與 IIS 6.0 的 Worker Process 整合支援 Application PoolUTF-8 編碼How to: 在 web.config 檔中設定
.NET Cache API可直接存取、設定 HTTP.SYS 的內部快取output cache :快取執行結果fragmented cache :部分網頁內容
![Page 35: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/35.jpg)
對對 .NET.NET 的支援的支援 ASP.NET 狀態維護
ASP.NET State Server將狀態資訊儲存在 ASP.NET 程式外部
獨立行程獨立電腦SQL Server 資料庫
提高強固性、延展性 簡化 Web Service 開發
ASP.NET 簡化 IIS 6.0 的 Web Service 開發
![Page 36: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/36.jpg)
IIS 5.0IIS 5.0 與與 6.06.0 的比較的比較IIS 5.0 IIS 6.0
作業平台 Windows 2000 .NET Server
架構 TCP/IP WinSock搭配DllHost.exe
HTTP.SYS 搭配一個或多個Worker Processes
Metabase Binary XML 檔案安全 Windows
KerberosSSL
Windows KerberosSSLPassword
![Page 37: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/37.jpg)
重點總結重點總結 新的 IIS 6.0 架構提供更穩固、更快的 Web 平台
HTTP.SYSWeb Admin ServiceApplication Pool 及 Worker Process
ASP Template Cache XML-based Metabase 新增許多 Command-line 命令 對 .NET 的支援
![Page 38: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/38.jpg)
更多的資源更多的資源 http://www.microsoft.com/windows2000
Windows 2000 首頁、更新、 service packs 及 add-ons, scripting …
http://www.microsoft.com/taiwan/windows2000 Windows 2000 中文首頁
SQL Server Magazine 國際中文電子版http://www.sqlmag.com.tw
ASP.NET 進階 恆逸專屬課程
![Page 39: IIS 6.0 新功能及與 .NET 的整合](https://reader035.vdocuments.mx/reader035/viewer/2022081501/56814dc8550346895dbb1ccd/html5/thumbnails/39.jpg)
http://www.microsoft.com/taiwan/windows2000http://www.microsoft.com/taiwan/windows2000
http://www.microsoft.com/taiwan/securityhttp://www.microsoft.com/taiwan/security