Windows 2008 IIS 7.0 intermittent slow down

iis-7windows-server-2008

I have an application running on a Hyper V 2008 R2 instance (2GB memory). The application is running on asp.net mvc 3.0 and .Net 4.0.

This is a low traffic internal application (1 – 2 requests per second).

We are experiencing an alarming number of application slow downs which we cannot pin point the cause.

This is a screenshot of stuck connection (more than 60 seconds time) in RequestAcquireState:
enter image description here

The server is a fresh installation of IIS7 and Windows Server 2008 (as recent as 10 days ago) and the only web application in the VM. We also use MSMQ in the application pool so that the app can broadcast messages to the queue.

There are 5 thin clients using NComputing terminal connected to one machine that access the web application.

Best Answer

I think you probably want to take this to StackOverflow for a deeper dive - I'm pretty sure that whatever answer you get will require either settings fiddling of throttling limits in a web/machine.config file, or redevelopment of the application code.

Casting an eye over the requests being processed, I notice they're all from a very low number of client IPs; some components are known to serialize access from the same IP (or to the same session - is it all the same user with those connections open?) sometimes.

If this isn't simply post-recycle slowness, and a big-picture performance analysis of the host and particularly IO contention (epic disk queue?) doesn't address it, I'm not sure there's an IIS-level setting that's going to fix it. (unless it doesn't happen on a fresh one).

Easiest method to troubleshoot it: Grab a dump of the process in Task Manager, then debug that with PSSCOR2, try to work out what all the waiters are waiting on, and whether there's a nasty little "maxSomethings=2" in there. Or a greedy exception handler that doesn't clean up, which again, puts us back in SO territory.

Related Topic