Wednesday, 14 September 2011


IIS thread counts and web services requests

Worker process:

In iis6 and iis 7, worker process is handling all the asp.net and WCF services.

Application pool and worker process:

Each application pool have one worker process

Thread handling in iis7

Each worker processor can handle 20 threads per processor, but this can be changed by editing machine.config with parameter called autoconfig=true/false. default thread timeout is 20 minutes(relatively so high), If asmx or wcf service not accepting any new requests, we should check about thread count, if it is exceeding than 20 performance will be affected.


Thread handling in ii6:
Default thread count value is decided based on server configuration, it may vary based on server hardware and architecture.

How to check thread count:
Task manager or performance counter both are good option to check thread count.

How to find which thread causing trouble:
performance counter, processor monitor, thread dumps are best option. If we go, iis thread dumps, iisstate needs to be installed.

Advisable:
While hosting asmx or wcf services, we have to divide services and host in separate application pool. While making call with some other services, we have to do timout, if destination service, not responding particular time and that timedout needs to be logged. It is really helpful during the investigation.

No comments:

Post a Comment