Overview
Hosting multiple Web sites on a single machine is challenging. Hosters may struggle with quality of service, site density, security, and performance configuration. IIS 7.0 is built into Microsoft Windows Server® 2008 and makes many improvements in these areas.
IIS 7.0 is a secure, easy to manage platform for developing and reliably hosting Web applications and services. With IIS 7.0, minimize patching and security risks with fine grained control over the Web server footprint and reduce administrative costs by managing Web infrastructure more efficiently.
IIS 7.0 also provides benefits for shared hosting environments, including support for throttling the number of active Web sites and centralizing your Web server configuration for multiple servers.
Some of the key shared hosting features of IIS 7.0 include:
- Ability to share configuration between multiple servers
- Centralized management for servers and Web farms
- Remote administration for non-administrators
- Custom delegation of features for each site or application
- Improved performance and security for CGI applications on Windows
- Isolated configuration for application pools
Recommended Shared Hosting Setup
Every hoster has a different way of running their shared hosting environment. Some hosters use an application pool for every site or place multiple sites in a single application pool. Some hosters use a remote file server or Network Appliance Server (NAS) for content storage, while others place content on the local disk of the Web server. There are many different options available.
This article examines a shared hosting setup optimized and tested for the shared hosting scenario. This setup is intended as a baseline that can be changed in order to work better for different shared hosting environments. It has the following characteristics:
- Configured and tested with up to 5,000 Web sites (not running concurrently)
- A traffic pattern of 90/10 is assumed (90% of traffic to 10% of sites)
- An Active Directory domain is used to provide accounts
- The application pool account is used as the anonymous identity (instead of requiring a separate account for the anonymous identity)
- Content is stored on a remote file server
Note: The configuration section of the Hosting Guidance includes information about configuring IIS, ASP, ASP.NET, PHP, and other components for Shared Hosting.
The following diagram shows a sample of a shared hosting setup:

Fault Tolerance
This shared hosting architecture includes a remote file server for content storage in order to prevent the Web server from being a single point of failure and to allow easier migration of Web servers. However, this scenario does not provide a fully redundant solution.
For instance, the remote file server is a single server and a point of failure for the content. For a highly available shared hosting deployment, it is recommended that more than one back end is configured using File System Replication v2 (FRSv2) or greater, available in Windows Server 2008 and Windows Server® 2003 R2.
Performance
This shared hosting architecture was tested on x64 machines, which are recommended for performance benefits. These performance benefits translate into increased scalability, as both the Web server and the remote file server can take advantage of increased addressable memory.
The performance testing was performed using a Windows Server 2008 domain controller, but hosters may use a Windows Server® 2003 domain controller.
Additional Resources
Additional information about Windows Server 2008 and other information discussed in this overview can be found at the following locations:
Comments