Simplify Development With Process Isolation

In earlier versions of IIS, all ISAPI applications (including ASP) shared the resources and memory of the server process. Although this provided fast performance, unstable components could cause the server to crash—not an acceptable behavior for a mission-critical application such as IIS. To make matters worse, in-process components couldn't be unloaded unless the server was restarted—which meant that modifying existing components would affect all sites that shared the same server, whether they were directly affected by the upgrade or not.

Thanks to close integration with Component Services, applications in IIS version 4.0 and above can be started in an isolated process. There are two reasons for doing this:

  1. Component development; rather than taking down the entire server to update a single component, you can stop and restart just a single application. In earlier versions of IIS, to add an updated component to an application, or an entirely new application, you previously had to stop the Web service, replace the old DLL with your new version in its shared location on the server, and restart the Web service again. Now with an isolated process, you can update a production Web site without shutting down all applications.
  2. Process isolation, which limits the effects of a crash to the single application that caused it. In addition to protecting your primary Web service from the crash, the application can be configured to restart automatically as often as you like. In the case of an application fatal error, the application's process is automatically terminated. Because the application is running in the Component Services system process, all transactions in progress are aborted. The Windows event log stores a record of the event, and Component Services restarts the application. The only clients affected by the failure are those with outstanding requests to that specific application.

 Process Isolation

If you decide to run your application as a separate process, or with other applications in a single pooled process, you will need to select High (Isolated) or Medium (Pooled) from the Application Protection drop-down list on the Home Directory or Virtual Directory property sheet. You should first create an application for your application starting-point directory, if you haven't already done so. Components that will run in the new process must be installed into the appropriate COM application. For more information, see the Component Services documentation.