IIS7.0 with End to End Extensibility – A brief oveview

All people who deal with microsoft technologies today are sure to know about the terms like WCF,WPF,Silverlight,Windows Azure etc.But the basic requirement to develop applications on all the above technologies is only the IIS.People today donot concentrate much on the features of IIS and most of them still work on only the older version but develop applications on WCF and Silverlight.So,I am here to ellaborate the features available in the latest version of IIS so that the development and performance tuning of the applications would become much easier.

This version of IIS has many addition and removal of features when compared to previous versions.Request processing architecture itself varies,and the main component “ISAPI.dll” to process the reuqest is missing in the latest version.So who does the job now?

A new C++ module API is introduced with enhancement to support all the new IIS7.0 features and it is said that it is also simple to program.New IIS eliminates the duplication in IIS as well as in ASPP.NET and hence performance of the application is expected to be much higher.

A short description on the working flow when a client request reaches the webserver is given below :
When the IIS receives the request then a component called HHTP.SYS will process the request first.It contacts Windows Activation service(WAS) to obtain further information.WAS inturn gathers the configuration information about application pool and site configuration.World Wide Web (WWW) uses the configuration information to configure HTTP.sys.WAS starts the worker process and the worker process inturn will process the request and returns the response back to HTTP.sys.Now the client machine receives the response.

Another important difference in the architecture is that iis7.0 has introduced “WebServer Engine”  in which we can add more component and modules depending upon the requirements.

Further details can be obtained from the msdn link