Categories:
.NET (357)
C (330)
C++ (183)
CSS (84)
DBA (2)
General (7)
HTML (4)
Java (574)
JavaScript (106)
JSP (66)
Oracle (114)
Perl (46)
Perl (1)
PHP (1)
PL/SQL (1)
RSS (51)
Software QA (13)
SQL Server (1)
Windows (1)
XHTML (173)
Other Resources:
What is the difference between “Web farms” and “Web garden”?
What is the difference between “Web farms” and “Web garden”?
✍: Guest
“Web farms” are used to have some redundancy to minimize failures. It consists of two or
more web server of the same configuration and they stream the same kind of contents.
When any request comes there is switching / routing logic which decides which web
server from the farm handles the request. For instance we have two servers “Server1”
and “Server2” which have the same configuration and content. So there is a special switch
which stands in between these two servers and the users and routes the request accordingly.
Above figure explains in detail how web farm work. You can see 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 that server. So for 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 because we have web farm at place server1 and server2 are loaded with two
request each rather than one server loading to full. One more advantage of using this
kind of architecture is if one of the servers goes down we can still run with the other
server thus having 24x7 uptime.
The routing logic can be a number of different options:-
? Round-robin: Each node gets a request sent to it “in turn”. So, server1 gets a request,
then server2 again, then server1, then server2 again. As shown in the above figure.
? Least Active: Whichever node show to have the lowest number of current connects
gets new connects sent to it. This is good to help keep the load balanced between
the server nodes.
? Fastest Reply: Whichever node replies faster is the one that gets new requests. This
is also a good option - especially if there are nodes that might not be “equal” in
performance. If one performs better than the other, 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
processes. All requests to IIS are routed to “aspnet_wp.exe” for IIS 5.0 and “w3wp.exe”
for IIS 6.0. In normal case i.e. with out web garden we have one worker process instance
(“aspnet_wp.exe” / “w3wp.exe”) across all requests. This one instance of worker process
uses the CPU processor as directed by the operating system.
But when we enable web garden for a web server it creates different instances of the
worker process and each of these worker process runs on different CPU. You can see in
the below diagram we have different worker process instances created which run on
different CPU’s.
In short we can define a model in which multiple processes run on multiple CPUs in a
single server machine are known as a Web garden.
2007-10-24, 5777👍, 0💬
Popular Posts:
How can I use tables to structure forms Small forms are sometimes placed within a TD element within ...
How To Retrieve Input Values for Checkboxes Properly? - PHP Script Tips - Processing Web Forms If mu...
What does a well-written Object Oriented program look like? A well-written object oriented program e...
In which event are the controls fully loaded ? Page_load event guarantees that all controls are full...
How to make elements invisible? Change the "visibility" attribute of the style object associated wit...