Difference between "web farms" and "web garden", DOT NET Programming

What is the difference between "Web farms" and "Web garden"?

The "Web farms" are used to have some redundancy to reduce the failures. It consists of two or more web server of the similar configuration and they stream the similar kind of contents. Whenever any request comes there is a switching / routing logic which decides which web server from the farm handles the request. For instance we have2 servers "Server1"

And "Server2" which have the similar configuration and content. So there is a special switch which stands in between these two servers and the users & routes the request accordingly.

1962_Web farm.png

Figure : - Web Farm in action

The Above figure describes in detail how the web farm work. You can see that there is a router in between which takes a request and sees which one of the server is least loaded and forwards the request to the server. So for the request1 it route's server1, for request2 it routes server2, for request3 it routes to server3 and final request4 is routed to server4. So you can see as we have web farm at place server1 and server2 are loaded with two request each rather than one server loading to full. One more merit of using this kind of architecture is if one of the servers goes down we can still run with another server thus having 24x7 uptime.

The routing logic can be a number of various options:-

1)Round-robin: In this Each node gets a request sent to it "in turn". And hence  , server1 receives  a request, then server2 again, and then server1, then server2 again.

2)Least Active: In this Whichever node show to have the lowest number of current connects receives  new connects sent to it. This is very good  way to help to keep the load balanced between all the server nodes.

3)Fastest Reply: In this Whichever node replies faster is the one that gets the new requests. This is also a very good option - especially if there are nodes that might not be "equal" in performance. If anyone performs better than the another, then send more requests there rather than which is moving slowly?

Before we try to understand what a web garden is let's try to understand how IIS handles all processes. The requests to the IIS are routed to an "aspnet_wp.exe" for IIS 5.0 and "w3wp.exe" for IIS 6.0. In general without the web garden we have one worker process instance ("aspnet_wp.exe" / "w3wp.exe") across all requests. This one instance of the worker process uses the CPU processor as directed by  operating system.

150_web garden.png

Figure: - With out Web Garden

But whenever we enable the web garden for a web server it creates various instances of the worker process and each of these worker processes runs on various CPU. You can see in the diagram given below we have different worker process instances created which run on varoius CPU's.

2104_web garden1.png

Figure  : - With Web Garden

In brief we can define a model in which multiple processes run on the multiple CPUs in a single server machine are defined as a Web garden.

Posted Date: 9/22/2012 6:31:24 AM | Location : United States







Related Discussions:- Difference between "web farms" and "web garden", Assignment Help, Ask Question on Difference between "web farms" and "web garden", Get Answer, Expert's Help, Difference between "web farms" and "web garden" Discussions

Write discussion on Difference between "web farms" and "web garden"
Your posts are moderated
Related Questions
Explain the different services provided by DLR to CLR. The services given by DLR to CLR are used for supporting dynamic languages. These services include the following: Exp


Question: (a) Give three key differences between the DetailsView and FormView controls. (b) The ASP.NET 2.0 Framework introduces the idea of validation groups. How Valida

Looking to build FIFA coins selling and buying website Project Description: I would like a website made for FIFA 14 TEAM. What this website will do is having automatically bu

Web application as well as site design & development (.NET) We are interested in retentive the services of a solution provider that will design and implement the presentation la

Finding the frequencies - C# Program: Please let me know how to find Frequencies in C#.

What is a class? A class describes all the attributes of objects, as well as the methods that execute the behaviour of member objects. It is a comprehensive data type, which sh

Computer programming Project Description: Solving some issues about traffic jam Skills required: C# Programming, Java, C++ Programming, PHP, Software Architecture

Problem: (a) Define the term ViewState as used in the ASP.NET framework. (b) What is a StateBag class? Give a simple example to support your answer. (c) (i) Distingui

Hi, I have been working on Dot Net over the past few years. I would like to do online tutoring for .NET. Could you please let me know the possible oppurtunities