Filed in: Performance Tags: Performance score


This rule tracks application pool queueing.

Application pool queueing takes place whenever IIS is unable to dequeue enough requests to keep up with the rate of incoming requests.

It can be caused by a number of application factors, including IIS thread pool exhaustion, or system-wide performance problems like low memory/excessively high Cpu usage.

Why is this important

Queued requests experience additional processing delays in the queue, before being picked up. If enough requests are queued, additional requests will be rejected by 503 "Service Unavailable" errors.

However, application pool queueing often signals a problem that is worse than just the time the requests spent in the queue. It fundamentally reflects the system's inability to keep up with the workload. It often also means that requests that have been dequeued are experiencing slow performance.

Diagnostics

This rule will automatically identify the reason for queueing, including IIS thread pool exhaustion, insufficient resources, blocking in ASP.NET application initialization, and more.

Proactive guidance

If you are on a Business plan, we may offer additional guidance to help you optimize your application and improve its performance. To find out more, contact support.




More resources


Want to learn the best techniques for managing your IIS web server? Join our how-to newsletter.
Want to get the best tool for troubleshooting and tuning your web apps? .

Build your skills


Get performance best practices straight from our IIS & ASP.NET experts:


How-to newsletter: 1-2 emails/week with expert IIS & ASP.NET tips.