Archive for category IIS

How new Integrated mode is different than Classic mode in IIS 7.x

Classic mode that was the only mode available in IIS6 and below.IIS works with ISAPI extensions and ISAPI filters only. It just treats ASP.NET as an external plug-in implemented in ISAPI. When using classic mode in IIS 7.x, it works like IIS 6.0, the server uses two pipelines to handle requests, one for native code and the other for managed code. In this mode the application doesn’t take full advantage of everything IIS 7.X has to offer. All requests pass through the IIS pipeline first, and then if the file extension is mapped to ASP.NET ISAPI extension, then the request is handed to aspnet_isapi.dll and passes through the ASP.NET request pipeline. If the file is static file, ASP or PHP, it is handled by something else.

Integrated mode is a new mode in IIS7 where IIS pipeline is tightly integrated as ASP.NET request pipeline.

When a worker process in an application pool receives a request, the request passes through an ordered list of events (pipeline). Each event calls the necessary native and managed modules to process portions of the request and to generate the response.

ASP.NET is no longer treated as an external plug-in. It’s completely blended and integrated in IIS. In this mode, ASP.NET is basically a part of IIS. ASP.NET HttpModules and HttpHandlers basically have nearly as much power as an ISAPI filter and ISAPI extension would have had respectively. It allows HttpModules to participate in all requests, including those for static content, ASP pages and images.

 Benefits:

This model eliminates steps that were previously duplicated in IIS and ASP.NET, such as authentication. Additionally, integrated mode enables the availability of managed features to all content types.

It provides improved performance, provides modularity for configuration and administration, and adds flexibility for extending IIS with managed-code modules.

You can define a managed-code module, implement the IHttpModule interface in the App_Code folder of the Web application and register it to apply to all IIS requests by making few changes in web.config, which includes requests for static files.

Migrating Application from IIS 6.x to IIS 7.x:

Classic mode maintains backward compatibility with earlier versions of IIS.

When you use IIS 7.0, you can run applications in Classic mode and integrated mode side-by-side on the same server. Both Classic and Integrated mode support the .NET Framework version 2.0 and later releases. The .NET Framework version 1.1 is supported in Classic mode only.

, , , ,

Leave a comment