Date post: | 15-Jan-2016 |
Category: |
Documents |
View: | 219 times |
Download: | 0 times |
Chris J.T. AuldDirector – Strategy and InnovationIntergenMSDN Regional Director
Build and deploy custom server components● Leverage powerful modular server architecture ● New native (C++) server APIs● Powerful and convenient managed (.NET) server
featuresExtend the configuration and administration tools● Leverage the new ‘remote management’
capabilities● Create new schematized configuration sections● Plug into IIS Manager as a first-class citizen with
custom UI
Authentication
Basic NTLM Anon
...
DetermineHandler
...
Response Compression
Logging
HTTP Request
HTTP Response
CGI
Static File
ISAPI
Monolithic server Monolithic server implementationimplementation
Limited Limited customizationcustomization
Fixed Fixed functionalityfunctionality
Limited ISAPI Limited ISAPI Filter Filter extensibilityextensibility
Authentication
...
ExecuteHandler
...
SendResponse
HTTP Request
HTTP Response
Authorization
UpdateCache
ResolveCache
Authentication
...
DetermineHandler
...
SendResponse
HTTP Request
HTTP Response
BasicNTLM Anon
CGI
Static File
ISAPI
Log Compression
Componentized Componentized serverserver
Pluggable Pluggable modular modular functionalityfunctionality
Small generic Small generic request pipeline request pipeline
EnablesEnablesLightweight Lightweight serversservers
Custom / Custom / specialized specialized serversservers
UrlAuthz
OutputCache
Forwarder
Basic40+
ISAPI ExtensionOnly processes Only processes ASP.NET ASP.NET requestsrequestsRuntime Runtime limitationslimitationsFeature Feature duplicationduplication
Authentication
Basic NTLM Anon
...
DetermineHandler
...
SendResponse
HTTP Request
HTTP Response
CGI
Static File
ISAPI
Compression
Log
aspnet_isapi.dll
Authentication
MapHandler
Forms Windows
...ASPX
Trace
...
...
ISAPI
Authentication
...
ExecuteHandler
...
SendResponse
Authorization
UpdateCache
ResolveCache
HTTP Request
HTTP Response
Classic ModeFor compatibility
Integrated ModeCan process all requestsEnhanced functionalityHigher fidelity notificationsDeveloper extensible
Anon
aspnet_isapi.dll
Authentication
MapHandler
...
...
Forms Windows
ASPX
Trace
...
Basic
Compression
Log
Static File
Existing ASP.NET APIIHttpModule and IHttpHandler types
Expanded ASP.NET APIsNew HttpApplication Events
MapRequestHandler, LogRequest, PostLogRequest
HttpRequest.HeadersHttpResponse.HeadersHttpResponse.DisableKernelCacheHttpRequest.ServerVariables
Modules provide services to all requestsBasic Authentication moduleCompression module (etc)
Handlers provide services to specific requests
ISAPI handler (.dll)Static handler (.htm, .jpg, .gif, etc)
IIS 7 pipeline allows native and managed modules and handlers
“Integrated” Application Pool mode use the managed modules and handlers
“Classic” Application Pool modeIIS 6 style invocation of .NET
The ActionThis Runtime Page Optimizerhttp://www.actionthis.com/rpo/
IIS 7
.NET + IIS7.NET + IIS7
NET global settings
ASP.net global settings
Contoso.com \ Orders
.NET Framework
Root web.configMachine.config
Global settings and location tags
Applicationhost.config
Site web.config
<system.web>.NET settings
..
Contoso.com root
..
..
<system.webServer>IIS7 Delegated settings
..
IIS settings now live in ApplicationHost.config
Can also be specified in web.config if delegation is allowed
All settings are schematized in XML‘Schema’ files live in %windir%\system32\inetsrv\config\schema
Shared configuration allows multiple servers to use the same centralized configurationExtending configuration
Static ConfigurationDrop a .xml file into the schema directoryAdd a section to applicationHost.config
Allows you to add dynamic properties and add behavior to configurationAHADMIN - Application Host Administration Interface
Implemented in %Windows%\System32\Inetsrv\nativerd.dllImplements IIS native configuration stackExposes a COM API
Exposes three interfaces for Dynamic Extensibility
IAppHostPropertyExtensionIAppHostMethodExtensionIAppHostElementExtension
AppCmd.exeCommand line to query and modify configuration
IIS ManagerUser Interface for end users
WMINew WMI provider to query and edit configuration
ScriptingAHADMIN is a new COM interface for managing configuration system
Managed CodeMicrosoft.Web.Administration provides a simple managed API to edit configuration
Tools for every needTools for every need
Completely re-written using .NET Windows Forms and managed codeIIS Manager is now easily extensible
Add new feature pagesExtend tasks for sites/applicationsMore…
Extensibility FrameworkMicrosoft.Web.Management.dll
Transparent remoting over HTTPS
IIS Manager ClientIIS Manager ClientConnectionConnection
Module Module UIUI
IIS 7.0IIS 7.0 Application AppDomainApplication AppDomain
ProviderProvider
Content and Content and ConfigurationConfiguration
RuntimRuntime Statee State
Provider Provider DataData
Web Management ServiceWeb Management Service(WMSvc)(WMSvc)
Standalone Web Server Standalone Web Server http://server:8172http://server:8172
Module Module ServiceService
Module ServiceModule ServiceProxyProxy
Connection Connection ManagerManager
FrameworkFramework
Module Module UIUI
Develop service-side functionalityModuleProviderModuleService
Develop client-side functionalityModuleModuleServiceProxyModulePage
IIS7 provides end-to-end extensibility for the managed code developer
Take advantage of the IIS7 managed pipelineExtend configurationBuild new features into the management tool
Chris Auldhttp://[email protected]
IIS Community Sitehttp://www.iis.net
ActionThis Runtime Page Optimizerhttp://www.actionthis.com/rpo/
Subscribe to our free, online newsletters to stay up to date with Microsoft news, information & events
www.microsoft.co.nz/subscribe
Don’t forget to fill in your Evaluation form!
Hand in at end of day for complimentary software
TechEd 2008: 1-3 September, SkyCityMark the dates. Registration opening soon.