Microsoft KB Archive/916984

= FIX: You experience high memory usage in the W3wp.exe process on a Windows Server 2003-based computer that has Internet Information Services (IIS) 6.0 installed =

Article ID: 916984

Article Last Modified on 12/3/2007

-

APPLIES TO


 * Microsoft Internet Information Services 6.0

-



Important This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry



SYMPTOMS
You experience high memory usage in the W3wp.exe process on a Microsoft Windows Server 2003-based computer that has Microsoft Internet Information Services (IIS) 6.0 installed.

This problem occurs during the transfer of a large HTTP response that is generated by an Active Server Pages (ASP) application to a client computer. An example of an ASP method that can generate this large HTTP response is the Response.BinaryWrite method. The memory usage in the W3wp.exe process may be as high as the size of the whole HTTP response that is being transferred. Typically, this problem occurs when the client computer uses a slow connection link.



Service pack information
To resolve this problem, obtain the latest service pack for Windows Server 2003. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

889100 How to obtain the latest service pack for Windows Server 2003

Prerequisites
You must have Windows Server 2003 Service Pack 1 installed to apply this hotfix.

Restart requirement
If the Asp.dll file is being used when you apply this hotfix, you must restart the computer after you apply this hotfix.

If you do not want to restart the computer after you apply this hotfix, stop all IIS services before you apply this hotfix. To stop all IIS services, type Iisreset /stop at a command prompt, and then press ENTER.

File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

Windows Server 2003, x86


STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section. This problem was first corrected in Windows Server 2003 Service Pack 2.



MORE INFORMATION
Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

In IIS 6.0, an ASP Web application uses asynchronous writes to the Http.sys file to transfer data to a client computer. If the client computer uses a slow connection and slowly retrieves the requested data, the data is queued in memory on the Web server.

After you apply this hotfix, you can configure the number of bytes that can be queued in memory. If the limit that you configure is reached, the file transfer is paused until the client computer retrieves enough data so that the amount of queued data is lower than the configured limit.

Important This hotfix only affects ASP applications. This hotfix does not affect Microsoft ASP.NET applications.

To limit the amount of data that can be queued in the W3wp.exe file, follow these steps:  Apply the hotfix that is described in this article. Click Start, click Run, type regedit, and then click OK. Locate and then click the following registry key:

 

 If the  subkey exists, go to step 7. If the  subkey does not exist, go to step 5. On the Edit menu, point to New, and then click DWORD Value. Type VectorSendThrottleLimit, and then press ENTER.</li> In the right pane, right-click VectorSendThrottleLimit, and then click Modify.</li> In the Value data box, type the value that you want, and then click OK.</li></ol>

Warning If you set the  subkey to a value that is less than the amount of data that an ASP page sends to a client, IIS stops responding (hangs). For example, if you set the  subkey to 1000, any ASP page that transfers more than 1000 bytes is not dispayed in the client browser. Additionally, the IIS thread that handles the request is blocked until you restart the IIS service.

Note By default, this feature is disabled, and the  subkey does not exist. When this feature is disabled, the value for this subkey is 0.

Keywords: kbbug kbfix kbqfe kbpubtypekc kbhotfixserver kbwinserv2003sp2fix KB916984

-

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

© Microsoft Corporation. All rights reserved.