next up previous contents
Next: Technologies Up: Creating Linux Web Farms Previous: Scalability:   Contents

Web Farms

When a service grows beyond the capabilities of a single machine, groups of machines are often employed to provide the service. In the case of HTTP2 and HTTPS3servers, or web servers, this is often referred to a Web Farm. Web farms typically employ both high availability and scalability technologies in order to provide a highly available service spread across multiple machines, with a single point of contact for clients.

Figure 1: Sample Web Farm
\includegraphics[width=13cm]{webfarm}

Web farms can take many forms, however, the three tiered approach is a useful model for explaining how a web farm works. A sample web farm is shown in figure 1. [2]

If a geographically distributed system is required then intelligent DNS solutions such as Resonate and Eddieware can be employed that will return the IP address of one of the servers, based on some heuristic. Alternatively, a central web server can handle all incoming requests and distribute them using an HTTP redirect after making a decision on which server the client should be directed to. The rewrite module that ships with the Apache HTTP Server is a very useful method of achieving this. It is also possible, using EBGP49, to advertise the same network in more than once place and let the routing topology route customers to the most appropriate web server for them. Of course any instance of a web server in this discussion can be replaced with a web farm as per figure 1. A web farm of web farms if you will.


next up previous contents
Next: Technologies Up: Creating Linux Web Farms Previous: Scalability:   Contents
Horms 2001-11-23