What is The Difference Between Web Farm and Web Garden?

Web Farm:

You have only one web server and multiple clients requesting for the resources from the same server.
There is huge numbers of  incoming traffic for your web sites, one standalone server is not sufficient to process the request.  You may need to use multiple server to host the application and divide the traffic among them.  
This is called "Web Farm".

In general web farm architecture, a single application is hosted on multiple IIS Server and those are connected with the VIP ( Virtual IP ) with Load Balancer. Load Balancer IP’s exposed to external worlds to access. So whenever some request will come to server from clients, it will first hit the LB. Then based on the traffic on each server, LB distributed the request to corresponding web server. These web server may share same DB server or may be they can use replicated server in the back end.

When we host a web application over multiple web server to distributed the load among them  is called Web Farm.

Web Garden:
Worker Process is responsible for handling all kind of request, response, session data, cache data. Application Pool is the container of worker process. Application pools is used to separate sets of IIS worker processes and enables a better security, reliability, and availability for any web application. Each and every application pool contains a single worker process. Application which contains the multiple worker process called Web Garden.

In the above diagram you can see, on of the application containing the  multiple worker process, which is now a web garden.

The Difference:
A web application hosted on multiple server and access based on the load on servers is called Web Farms and when a single application pool contain multiple worker process is called Web Garden.

0 7 Comments:

Post a Comment