X hits on this document





8 / 30

Microsoft® Windows Server™ 2003 White Paper

HTTP.sys is a kernel mode listener and request router. It also contains a response cache that allows cached requests to be handled without a context transition to user mode. It manages TCP connections, performs IIS text-based logging services and implements Quality of Service limits.

Web Administration Service (WAS) is responsible for worker process management (the application pool manager) and HTTP.sys configuration.

The Worker Process application (w3wp.exe) executes all worker processes, including in-process ISAPI extensions and ISAPI filters.

Important architectural features of IIS that are related to scalability include

Application Pools allows multiple Web applications to share a single worker process. This allows configuration settings to be applied to multiple applications at once. Because one instance of w3wp.exe is loaded for each process, using application pools limits the number of copies of w3wp.exe that are needed (reducing the resource load on the system)

Web Gardens are application pools with more than one worker process. Connection-based routing within the Garden ensures that the application is available even if one process dies.

Processor Affinitization allows developers to bind an application pool process (or processes) to one or more CPUs using a mask-based configuration.

There have been dozens of performance improvements to IIS 6.0 and ASP.NET on Windows Server 2003. Even ASP applications run faster on IIS 6.0 and Windows Server 2003 than they did on Windows 2000 and IIS 5.0. A few of the reasons for the performance improvements include:

64-bit processor (Itanium) support for Windows Server Enterprise Edition and Datacenter Edition.

ASP.NET is able to cache complete responses in HTTP.sys (the responses are marked as Location=“Server”). Cached responses are served straight from HTTP.sys, which is much faster because it is served from kernel mode and no user-mode transition is required. The ASP.NET application doesn’t even see requests if they are served from the cache.

IIS 6.0 supports output caching and a persistent ASP template cache for improved throughput, even when serving ASP applications.

IIS 6.0 supports a worker process mode without the marshaling overhead of IIS 5’s in-process mode. Again, faster processing means the server can handle more requests per second, which translates into more simultaneous users.

Centralized Binary Logging allows Windows Server 2003 to support up to 10,000 sites per server, up to twenty times more than the recommended 500 sites per box for Windows 2000. Centralized binary logging relieves past bottlenecks by logging data for multiple sites to a single log file. The binary data is later parsed out for individual site reporting.

Enterprise Edition and Datacenter Edition support more processors (up to eight for Enterprise Edition and up to 32 for Datacenter Edition).

Recycling processes recovers resources to ensure that a poorly written application doesn’t compromise the scalability of other applications by starving them for resources.

Implementing a Scalable Architecture6

Document info
Document views103
Page views103
Page last viewedSun Jan 22 10:30:54 UTC 2017