Statistics

Total Posts: 34
This Year: 0
This Month: 0
This Week: 0
Comments: 174


RSS 2.0   SocialTwist Tell-a-Friend


Admin

Sign In

Navigation


Recent Posts


On this page....

Gardening W3WP Worker Processes in IIS Web Garden

Archives

 Full Archives By Category
 2007 Calendar View
<January 2009>
SunMonTueWedThuFriSat
28293031123
45678910
11121314151617
18192021222324
25262728293031
1234567

Categories

CDOSYS (1) Classic ASP (10) Command Line (2) Databases (16) Excel (1) HTML (1) IIS (10) Indexing Service (1) Internet Explorer (7) Media Streaming (1) MS.Net (2) SQA (7) SQL Server (16) Windows OS (2)

Blogroll - Fav Blogs


Acknowledgments

DasBlog Theme Design by: Tom Watts
E-mail: Send mail to the author(s)
Theme Image by: dreamLogic

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

Technology Blog

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:

Sunday, January 04, 2009 7:18:35 PM (India Standard Time, UTC+05:30)