Testing Applications for Compatibility
Updated: August 22, 2005
Applies To: Windows Server 2003, Windows Server 2003 with SP1
Whether you are deploying existing applications that were developed for earlier versions of IIS on a server running IIS 6.0 in worker process isolation mode, or you are deploying new applications, it is important to test the applications for compatibility with worker process isolation mode features.
Functional testing consists of installing and configuring applications on a test server, and then sending HTTP requests to the application from a client on another computer. Load testing is functional testing that consists of sending HTTP requests in rapid succession to stress the worker process and the server. In both cases, you must diagnose the results for possible incompatibilities.
Figure 4.5 shows the process for testing application compatibility with worker process isolation mode.
Figure 4.5 Testing Applications for Compatibility
Checking for Known Conflicts with IIS 6.0
Most Web applications that run on earlier versions of IIS will run on IIS 6.0 in worker process isolation mode. However, in some cases, applications cannot run in worker process isolation mode. In other cases, you might be required to disable certain features to run an application in worker process isolation mode.
Applications that have the following characteristics are incompatible with worker process isolation mode, or must have certain features disabled to run in worker process isolation mode:
Require Read Raw Data Filters. Applications that require Read Raw Data Filters are not compatible with worker process isolation mode. The Read Raw Data Filters feature is supported only in IIS 5.0 isolation mode.
Require Digest authentication. You must use LocalSystem as the application pool identity for standard Digest authentication. This restriction does not apply when you are using Advanced Digest authentication.
Run only as a single instance. When an application runs only as a single instance, you cannot configure Web gardens, you cannot run the application in more than one application pool, and you cannot use overlapped recycling.
URL length exceeds 16 kilobytes. The default request header limit for HTTP.SYS is 16KB.
ASP applications that use consecutive dots in an include file. Using two or more consecutive dots in an include file works only if parent paths are enabled. Alternatively, consider not using include files.
Dependency on Inetinfo.exe. The application requires Inetinfo.exe, but the Inetinfo.exe process does not run in worker process isolation mode. This occurs rarely, if at all.
Require Dllhost.exe. The application requires Dllhost.exe, but the Dllhost.exe process is not available in worker process isolation mode. This occurs rarely, if at all.