I have a WCF 4 web service running on IIS 7.5.7600.16385 (Windows Server 2008 R2).
Most of the time it is running fine with 1-10 concurrent requests running (via worker processes view). The requests run for 1-7 secs each.
Once a day (random times withing a couple hours), the number of concurrent requests goes into to 100 and the request time elapsed is 1000+ secs and climbing until the app pool is killed. Then each new request gets added to the "queue" stacking up more requests.
What options do I have for monitoring what each request is doing when this happens? Can I do a dump to see that the call stack looks like? Can I kill the oldest one? If so, how?
Also, are there any other monitoring tools that are available to help track down this issue? I already have errors going to the event log and wcf tracing logging errors to file.
Any comments or suggestions would be great.
Thanks.