From the
Beating-the-Slashdot-Effect dept.:
The ubiquitous Linux, Apache, MySQL, and PHP/Perl/Python (LAMP) combination powers many interactive Web sites and projects. It's not at all unusual for demand to exceed the capacity of a single LAMP-powered server over time. You can take load off by moving your database to a second server, but when demand exceeds a two-server solution, it's time to think cluster.
A LAMP cluster is not the Beowulf kind of cluster that uses specialized message-passing software to tackle a computation-intensive task. It does not cover high availability features, such as automatic failover. Rather, it is a load-sharing cluster that distributes Web requests among multiple Web and database servers while appearing to be a single server.
All the software required to implement a LAMP cluster ships with most Linux distributions, so it's easy to implement. We'll construct a cluster using seven computers for a fictitious company, foo.com. Two servers will run DNS, primary and backup, to distribute Web requests among three Web servers that read and write data from two MySQL database servers. You could build any number of different designs, with more or fewer of each kind of server, but this model will serve as a good illustration of what can be done.
Linux.com