Microsoft KB Archive/816517

= HOW TO: Optimize Web Server Performance in Windows Server 2003 =

Article ID: 816517

Article Last Modified on 10/30/2006

-

APPLIES TO


 * Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
 * Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
 * Microsoft Windows Server 2003, Standard Edition (32-bit x86)
 * Microsoft Windows Server 2003, Web Edition

-







For a Microsoft Windows 2000 version of this article, see 308186.

308186



IN THIS TASK

 * SUMMARY
 * Disable Nonessential Services
 * Optimize Data Throughput for Network Applications
 * Optimize Performance for Background Services
 * Disable IIS 6.0 Logging
 * Enable Bandwidth Throttling
 * Enable CPU Monitoring
 * Limit Web Site Connections
 * Use HTTP Keep-Alives



SUMMARY
This step-by-step article describes the different methods that you can use to optimize the performance of a dedicated Windows Server 2003 Web server.

back to the top

Disable Nonessential Services
Disable Windows Server 2003 services that are not required for a dedicated Web server. To do this, follow these steps:  Click Start, point to Programs, point to Administrative Tools, and then click Computer Management. Under Computer Management (Local), expand Services and Applications, and then click Services.

In the Status column, each service that is running is labeled &quot;Started.&quot; The following services are not required on a dedicated Web server:  Alerter ClipBook Computer Browser DHCP Client</li> DHCP Server</li> Fax Service</li> File Replication</li> INfrared Monitor</li> Internet Connection Sharing</li> Messenger</li> NetMeeting Remote Desktop Sharing</li> Network DDE</li> Network DDE DSDM</li> NWLink NetBIOS</li> NWLink IPX/SPX</li> Print Spooler</li> TCP/IP NetBIOS Helper Service</li> Telephony</li> Telnet</li> <li>Uninterruptible Power Supply</li></ul> </li> <li>Note the services that depend on each service that you want to disable. To do this, follow these steps: <ol style="list-style-type: lower-alpha;"> <li>Double-click the service that you want to disable.</li> <li>Click the Dependencies tab.</li> <li>In the This service depends on the following system components list, note the services that this service depends on.</li> <li>In the The following system components depend on this service list, note the services that cannot start without this service.</li> <li>Click OK.</li></ol> </li> <li>One at a time, disable each service that you have selected. To do this, follow these steps: <ol style="list-style-type: lower-alpha;"> <li>Right-click the service that you want to disable, and then click Properties.</li> <li>In the Startup type list, click Disabled.</li> <li>If you want to stop the service immediately, click Stop. If the Stop Other Services dialog box appears, note the other dependent services that will also stop, and then click Yes.</li> <li>Click OK.</li></ol> </li> <li>Repeat step 4 to disable the other nonessential services.</li></ol>

Notes
 * Test the Web server for correct operation after you disable each service to make sure that you did not disable a service you want to continue to use.
 * If the Internet Information Services (IIS) server is a member of a Windows Server 2003 domain, you must have the TCP/IP helper service on your system to correctly apply Group Policy to the computer.
 * When you disable the DHCP client, the DHCP client stops dynamic DNS registration. This disables DNS dynamic update protocol and requires manual DNS records to be added for this client in the DNS server.

back to the top

Optimize Data Throughput for Network Applications
Run the IIS 6.0 process pageable code in working memory. To do this, follow these steps:
 * 1) In Windows Explorer, right-click My Network Places, and then click Properties.
 * 2) Right-click the Local Area Connection that you want to optimize, and then click Properties.
 * 3) In the This connection uses the following items list, click (but do not clear its check box) File and Printer Sharing for Microsoft Networks, and then click Properties.
 * 4) Click Maximum data throughput for network applications, click OK, and then click Close.

back to the top

Optimize Performance for Background Services
The IIS 6.0 process (Inetinfo.exe) runs as a background service. To increase performance for background services, follow these steps:
 * 1) Click Start, click Control Panel, and then click System.
 * 2) Click the Advanced tab, and then click Settings under Performance.
 * 3) Click the Advanced tab, click Background services, and then click OK two times.

back to the top

Disable IIS 6.0 Logging
Unless you require it, disable logging on Web sites, virtual directories, and files and folders. To do this, follow these steps:
 * 1) Click Start, point to Programs, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.
 * 2) Expand  , where   is the name of the Web server.
 * 3) Locate the item (Web site, virtual directory, or physical directory) that you want to modify, right-click the item, and then click Properties.
 * 4) Do one of the following:
 * 5) * If you selected a Web site, click the Home Directory tab.

-or
 * 1) * If you selected a virtual directory, click the Virtual Directory tab.

-or
 * 1) * If you selected a physical directory, click the Directory tab.
 * 2) Click to clear the Log visits check box, and then click OK.

To disable logging for the whole Web site, click the Web Site tab, click to clear the Enable Logging check box, and then click OK.
 * 1) Quit Internet Information Services (IIS) Manager.

back to the top

Enable Bandwidth Throttling
Limit the network bandwidth that is available to individual Web sites. To do this, follow these steps:
 * 1) Click Start, point to Programs, point to Administrative Tools, and then click Internet Services Manager.
 * 2) Expand  , where   is the name of the Web server.
 * 3) Right-click the Web site that you want to modify, and then click Properties.
 * 4) Click the Performance tab, and then click to select the Limit the network bandwidth available to this Web site check box.
 * 5) In the Maximum bandwidth box, type the new value, and then click OK.
 * 6) Quit Internet Services Manager.

back to the top

Enable CPU Monitoring
Enable CPU monitoring to monitor and to automatically shut down worker processes that consume large amounts of CPU time. To enable CPU monitoring, follow these steps:
 * 1) In Internet Information Services (IIS) Manager, expand the local computer, expand the Application Pools folder, right-click the application pool that you want to enable CPU accounting on, and then click Properties.
 * 2) Click the Performance tab, and then click to select the Enable CPU monitoring check box.
 * 3) In the Maximum CPU use box, click the up and down arrows to set the maximum percentage of the CPU that you want the application pool to use.

If the application pool uses more than the designated maximum, IIS generates an error message in the Windows Events log.
 * 1) In the Refresh CPU usage numbers (in minutes) box, click the up and down arrows to set the refresh rate.
 * 2) In the Action performed when CPU usage exceeds maximum CPU use box, click the appropriate action for the designated application pool:
 * 3) * Click No Action to have IIS generate an error in the Windows Events Log when the designated application pool reaches the maximum CPU usage.
 * 4) * Click Shutdown to shut down the application pool. Click Shutdown to stop the problematic application by terminating its host worker process.
 * 5) Click Apply, and then click OK.

For more information about CPU Monitoring, see the &quot;Enabling CPU Monitoring&quot; topic in the Internet Information Services 6.0 Administrators Guide.

back to the top

Limit Web Site Connections
Limit the number of connections available to individual Web sites. To do this, follow these steps:
 * 1) Start Internet Services Manager.
 * 2) Expand  , where   is the name of the Web server.
 * 3) Right-click the Web site that you want to limit, and then click Properties.
 * 4) Click the Performance tab, and then click Connections limited to.
 * 5) In the Connections limited to box, type the number of connections that you want to allow.

Note Each connected client uses approximately four concurrent connections. For example, a connection limit of 200 allows approximately 50 users to access the Web site.
 * 1) Click OK, and then quit Internet Services Manager.

back to the top

Use HTTP Keep-Alives
By default, the use of HTTP Keep-Alives is enabled. To verify that HTTP Keep-Alives is enabled, follow these steps:
 * 1) Start Internet Services Manager.
 * 2) Expand  , where   is the name of the Web server.
 * 3) Right-click the Web site that you want to modify, and then click Properties.
 * 4) Click the Web Site tab, click to select the Enable HTTP Keep-Alives Enabled check box, and then click OK.
 * 5) Quit Internet Services Manager.

back to the top

Keywords: kbhowtomaster KB816517

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.