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
What is Query String and what are their benefits and limitations? The query string is the information sent to the server appended to the end of a page URL. The benefits of u

What are the different types of replication supported by SQL SERVER? There are 3  types of replication supported by SQL SERVER which are shown below:- 1) Snapshot Replicati

Have you ever worked with Microsoft Application Blocks, if yes then which? The Application Blocks are C# & the VB.NET classes distributed as the Visual Studio projects which ca

Explain collation sequence in sql server. The Collation sequences are the set of rules which determine how the data is sorted and compared. The Sorting rules can be defined wit

Project Description: Online game development 1. Online Live Baccarat Game is required - server program(IOCP or ect..). - 2D graphic design. - client program. - we

What is Microsoft Intermediate Language (MSIL)? The .NET Framework is shipped with compilers of all .NET programming languages to develop programs. There are separate compilers


What are resource files? The Resource files are the files which contain program resources. Many programmers think that resource files are used only for storing strings. But you

I want Web Social Apps/ site Project Description: I need a web designer have a specific unique project in mind.  Skills required are C# Programming, Cocoa, Mac OS, iPhone,

What are value types and reference types?  Value type - bool, byte, chat, decimal, double, enum , float, int, long, sbyte, short, strut, uint, ulong, ushort. Value types are