User Guide

Techniques for Creating Scalable and Highly Available Sites 239
Techniques for Creating Scalable and Highly Available
Sites
Now that you have a fairly good understanding of scalability and availability, the next
step is to familiarize yourself with the techniques you can use to achieve scalable and
highly available Web sites.
This section describes the following topics:
What is clustering? on page 239
Hardware-based clustering solutions on page 240
Software-based clustering solutions on page 242
Combining hardware and software clustering solutions on page 244
What is clustering?
Clustering is a technique in which two or more Web servers supporting one or more
domains (
www.yourcompany.com) are grouped together as a cluster of servers to
collectively accommodate increases in load and provide system redundancy.
The following figure shows an example of a server cluster for a sample Web site:
Clustering for scalability works by distributing load among each server in the cluster
(load balancing) using either an unintelligent-but-regular distribution sequence
(round-robin DNS and routers) or a predefined threshold or algorithm that you
specify and can adjust for each server in the cluster (specialized clustering software).