Microsoft KB Archive/884372

From BetaArchive Wiki
Knowledge Base


Article ID: 884372

Article Last Modified on 3/23/2007



APPLIES TO

  • Microsoft Internet Information Services 5.0




INTRODUCTION

World Wide Web Distributed Authoring and Versioning (WebDAV) is an extension to the HTTP protocol that allows for remote authoring and management of Web content. In the Microsoft Windows 2000 implementation of the protocol, Microsoft Internet Information Services (IIS) 5.0 performs the initial processing of all WebDAV requests. IIS then forwards the appropriate commands to the WebDAV process. This article discusses the five-thread pool limitation that exists in WebDAV when WebDAV handles file completions for PUT requests.

MORE INFORMATION

In IIS 5.0, completion and cleanup in WebDAV PUT requests are handled by a pool of five threads. The file writing completions run asynchronously. If more than five write calls exist at the same time, a HTTP 500 "Server too busy" error message is returned, and the request does not go in the queue. This limitation is per physical server (that is, per Inetinfo.exe process). It cannot be changed. The limitation is not on the number of PUT requests. The limitation is only on the file completion write calls of each PUT request.

The thread pool is used to watch for file writing completions. All other WebDAV operations are performed on the thread that IIS assigns to the WebDAV request. Only completion and cleanup operations, such as the release of the file handle, are performed in the thread pool. The thread pool does significantly more work when an input/output operation is complete. If the input/output operation is not complete, the thread pool examines the state of the input/output operation and continues to the next PUT request. The five-thread limitation only occurs when five requests occur at the same time and the five requests take a long time to complete the write calls.

REFERENCES

For more information about WebDAV in IIS 5.0, access the product documentation from your server that is running IIS, or visit the following Microsoft Web site:

Keywords: kbtshoot kbinfo KB884372