Showing posts with label IIS7. Show all posts
Showing posts with label IIS7. Show all posts

Wednesday, March 28, 2007

QA - Popular IIS7 Concepts

Question:

Got another dumb question that I'm just struggling with.

What is meant by distributed configuration in IIS 7.0?

My guess (which I hate guessing) is that they are talking about the applicationHost.config file and web.config file(s). Would they also be talking about the ability to extend the schema?


Answer:

I suggest first reading this blog entry on distributed configuration.

"Distributed Configuration" refers to unified configuration hierarchy merged from multiple sources (i.e. files in arbitrary directories). Pragmatic way to think about it involves applicationHost.config and web.config file(s) and how values contained in them are merged into an unambiguous and effective result for every possible URL. It is analogous to "distributed NTFS ACLs", where every file resource either inherits from its containing directory or has its own overrides, and when a CreateFile() call accesses the file, an effective access check is verified.

Ability to extend the schema would be called "Extensible Configuration". Just as IIS7 can be viewed as Microsoft providing 40+ modules to provide IIS6-level behavior on top of the new Integrated Pipeline, the IIS7 configuration system can be viewed as Microsoft shipping new/existing ConfigSectionHandlers to provide a web.config-like user experience on top of the new extensible configuration system.

A related topic - "Delegatable Administration" refers to multiple users able to administer their own website; which basically piggybacks on "Distributed Configuration" and "filesystem ACLs" to determine who can configure what and where, and "Integrated Pipeline" to control what actually executes for a given configuration.


//David