Process for Ensuring Application Availability

Applies To: Windows Server 2003, Windows Server 2003 with SP1

The process for ensuring application availability includes setting availability goals, configuring IIS to achieve your availability goals, and testing your applications to ensure that they meet the availability goals that you set. Ensure that your availability goals accommodate the needs of your users for high application reliability and reasonable application response times. Figure 4.1 shows the process for ensuring application availability.

Figure 4.1   Ensuring Application Availability

Art Image

Application pools are sets of applications and the worker processes that service them. For you to create and configure application pools and make application pool assignments, IIS 6.0 must be running in worker process isolation mode. Thus, you need to evaluate the compatibility of your applications with IIS 6.0 worker process isolation mode in a test environment before deploying them in your production environment.

Important

The application-pool functionality is only available in IIS 6.0 worker process isolation mode.

The following quick-start guide provides a detailed overview of how to help ensure the availability of your applications. You can use this guide to help identify the steps of the ensuring application availability process that you need additional information about to complete so that you can disregard the information with which you are already familiar. In addition, for the procedures that are required to complete this process, see Appendix A: IIS Deployment Procedures.

Establishing Application Availability Goals

  1. Set service availability goals.

  2. Set request-handling reliability goals.

Configuring IIS 6.0 for Optimum Availability

  1. Isolate applications by completing the following steps:

    • Determine the application isolation needs of your server.

    • Create application pools and assign applications to them.

  2. Recycle worker processes in one of the following ways:

    • Recycle by elapsed time.

    • Recycle by number of requests.

    • Recycle at scheduled times.

    • Recycle on a virtual-memory threshold.

    • Recycle on a used-memory threshold.

  3. Tune performance by completing the following steps:

    • Configure idle time-out for worker processes.

    • Configure a request queue limit.

    • Enable HTTP compression.

    • Configure Web gardens.

    • Set processor affinity on servers that include multiple CPUs.

  4. Manage application pool health by completing the following steps:

    • Configure worker process pinging.

    • Configure rapid-fail protection for worker processes.

    • Configure the startup time limit for worker processes.

    • Configure the shutdown time limit for worker processes.

    • Enable debugging for application pool failures.

  5. Configure application pool identity.

Testing Applications for Compatibility

  1. Test applications for setup compatibility with IIS 6.0.

  2. Test applications for functional compatibility with IIS 6.0.