Understanding Web Garden and Web Farm in IIS

Understanding Web Garden and Web Farm in IIS

02 Aug 2025
Intermediate
69.9K Views
2 min read

Web Garden

By default, each application pool runs with a single worker process (W3Wp.exe). When an application pool runs with multiple worker process, it is called web garden.

Application pool

You can set multiple worker process for an application pool as shown in below steps.

Step 1:

App pool

Step 2:

App pool identity

Advantage of Web Garden:

A Web garden share the requests which comes for that application pool and if one worker process fails to process a request then another worker process can continue to process that request.

Limitation of Web Garden:

There are some limitations with Web Garden. When you use session mode to “In Proc" with your application, it will not work properly as expected; since session will be handled by different worker process. For avoiding this issue; you should use session mode "Out Proc" having "Session State Server" or "SQL-Server Session State".

Web Farm

When a web application is hosted on multiple web servers and access based on the load on servers, it is called Web Farm.

Web farm

In web farm, a single application is hosted on multiple IIS server and these IIS servers are connected with the VIP (Virtual IP) with load balancer. Load balancer IPs is exposed to external world for accessing your web application. Hence, when a request comes to server from client, it first hits the load balancer, and then based on the traffic on each server; load balancer distributes the request to the corresponding web server.

Advantage of Web Garden:

  1. It provides high availability. If any of the web servers goes down then Load balancer redirects the incoming requests to other web servers in the web farm.

  2. It provides high performance response for client requests.

Limitation of Web Farm:

There are some limitations with Web Farm; also. When you use session mode to “In Proc" with your application, it will not work properly as expected; since session will be handled by different web servers. For avoiding this issue; you should use session mode "Out Proc" having "Session State Server" or "SQL-Server Session State".

What do you think?

I hope now you have better understanding about Web Garden and Web Farm in IIS. Your valuable feedback, question, or comments about this article are always welcome.

Share Article
About Author
Shailendra Chauhan (Microsoft MVP, Founder & CEO at ScholarHat)

He is a renowned Speaker, Solution Architect, Mentor, and 10-time Microsoft MVP (2016–2025). With expertise in AI/ML, GenAI, System Design, Azure Cloud, .NET, Angular, React, Node.js, Microservices, DevOps, and Cross-Platform Mobile App Development, he bridges traditional frameworks with next-gen innovations.

He has trained 1 Lakh+ professionals across the globe, authored 45+ bestselling eBooks and 1000+ technical articles, and mentored 20+ free courses. As a corporate trainer for leading MNCs like IBM, Cognizant, and Dell, Shailendra continues to deliver world-class learning experiences through technology & AI.
Live Training - Book Free Demo
ASP.NET Core Certification Training
21 Sep
07:00AM - 09:00AM IST
Checkmark Icon
Get Job-Ready
Certification
Accept cookies & close this