When a web application or web site is created in IIS 6.0, by default the application pool chosen is “
Default Application Pool”. The administrator can create a new application pool. To know more on how to create an application pool,
click here.
By default there is one worker process (W3WP.EXE) associated to each application pool. A single Worker Process forms an application pool to which Web Applications and Web Sites are assigned. When constructing an application pool, the administrator has the option to decide how many worker processes to assign to the pool. When two or more worker processes are configured as part of an application pool they form what is referred to as a Web Garden.
To configure multiple worker processes to a web garden; open IIS 6 Manager, expand local computer and then the application pool. Choose the application pool name to which web garden is required to be configured and right click to choose properties. Click the performance tab and under web garden option specify the number of worker processes to be used in the
Maximum number of worker processes box. Click on OK button to apply the settings.
Advantages of Web Garden:Robust processing of requests - When a worker process in an application pool is busy or tied up (example: when a script engine stops responding), other worker processes in the Web Garden can accept and process requests for the application pool.
Reduced contention for resources - When a Web garden reaches a steady state, each new TCP/IP connection is assigned, according to a round-robin scheme, to a worker process in the Web garden. This helps smooth out workloads and reduce contention for resources that are bound to a worker process.
Caveats:- If the web application is using in-process ASP sessions state, it would encounter random and frequent loss of sessions. ASP.Net has three ways to manage ASP session states
- In-Process Session State (Used by default, sessions are stored in W3WP worker process)
- Out-Process Session State (ASP.Net Session State Service)
- SQL-Server Session Management (Using SQL Server)
- The classic ASP web applications use In-Process Session State, and hence web garden in IIS 6 may not work out
References: