Clustering is where two or more servers are configured to act as a single system. Clustering can improve the reliability and throughput of an Internet-based system. Troubleshooting and determining the root cause of problems also can be much simpler with clustering. However, clustering requires a great deal of technical knowledge if the system is to be properly set-up and maintained.

Clustering Benefits

Clustering improves the reliability of Internet-based systems because it eliminates many of the single points of failure that are possible in a single server system. For example, with clustering you could have two or more web servers supporting your Internet site. If one of the servers fails your throughput might be impacted to some degree but the site would still be available on the second server. In a single server system your site would be offline if this happened.

The throughput of a system can be vastly improved with clustering because you can put a load balancer in the system that will send traffic to the least busy resource. This also means clustering can handle huge swings in volume that may occur during the day.

Clustering also makes it much easier to troubleshoot systems if properly configured. Instead of having many different items loaded on one server you can put similar programs on each server so it is easier to determine if a problem is related to an application, database, bandwidth, etc.

Clustering Issues

The drawback to clustering is you have to know what you are doing. Clustering done right is easily scalable and easily maintained. Clustering configured wrong is a nightmare you don't want to experience.