Monday, January 11, 2010

IIS worker processes

IIS worker processes

Worker process isolation mode is the singular greatest enhancement in IIS.
It is actually on the same lines of application isolation which Microsoft introduced with IIS 4.

If you’re new to IIS and you’re thinking …what is a worker process?
A worker process is the process in which your application’s code/ ASP application reside during execution.
Isolating worker process is in fact isolating applications, thereby increasing reliability. Lets say if one of your applications was to crash or handle memory poorly traditionally it would have effected all sites, but that’s where worker process isolation saves the day.

Other then that worker processes have some cool properties, by default a worker process recycles(a new worker process is initiated and takes all new requests, and the old one fades out).. anywho the default time for it to recycle is 29 hours (1740 minutes).
And you have a whole bunch of other paramaters by which you can choose to recycle it i.e by the number of requests it answers or time of day, or by the amount of memory it occupies. You can also choose to recycle them manually from the IIS console, this will not effect your site or its active users a new process takes over and old one will take no new requests and fade out.

Here’s a small screen grab from my task manager where one w3wp.exe(worker process) is taking over the other.

Here you can see the properties of a worker process (this is from IIS 6.0)
You can see the various properties/ conditions based on which the worker process would automatically recycle.

No comments:

Post a Comment