advertisement
Login | Register   
  Include Code  Search Tips
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   TIP BANK
Browse DevX
Download the code for this article
This article deals with ASP classic. How many of you still have ASP classic applications running? Do you have plans to port them to ASP.NET? If not, why not? Have any of your ASP applications ever run into the problem described here--where a long-running process begins to block new requests? How did you solve it? Let us know in the ASP.NET forum on DevX.
Partners & Affiliates
advertisement
advertisement
advertisement
advertisement
 

Optimize ASP and IIS by Decoupling Long-running Requests

Lengthy Web requests, such as those that process and format complex reports, tie up threads from the ASP thread pool. When the number of ASP requests exceeds the number of available threads, you'll see a dramatic slowdown in response time. To solve the problem, you have to make your ASP pages run faster. And to do that you need to decouple the background request processing from the requesting ASP thread. Here's how. 


advertisement
here's little doubt that the Internet and the Web have transformed services and content delivery more than any other recent technology innovation. In its initial form, the Web provided a somewhat standard mechanism for delivering formatted content. As it matured, the Web was used for increasingly more complex forms of services delivery. In doing so, many developers applied traditional synchronous approaches to developing the Web systems that provided services. Synchronous delivery of these services has caused problems when attempting to scale these Web-based systems.


In this article, I will explain how synchronous access to slow and/or long running requests for resources leads to diminished Web server throughput. I used Microsoft's IIS Web server running the ASP runtime environment to address a specific problem with ASP processing. However, the general background explanation and solution you'll find here applies to all Web servers. The explanation will also include details on how to detect the problem using Performance Monitor (PerfMon). I will then describe and briefly demonstrate a solution to the problem using Microsoft's Message Queuing Server (MSMQ).

It's quick, easy and you get access to all the articles on DevX.
This registration/login is to allow you to read articles on devx.com.
Already a member?



advertisement