CLUSTERS


Determining how many servers to include in a cluster
In general, adding servers to the cluster increases the cluster's ability to balance the workload so that no server becomes overloaded and performance stays high. However, if servers use too many server tasks, CPU-intensive applications, and replicas, adding servers can decrease performance because of the additional amount of cluster traffic required to keep databases synchronized on all servers.

If your organization is small, you can start with two servers and add servers as your enterprise grows without affecting the performance to your users. Keep in mind that each server you add creates additional network traffic when it probes other cluster servers to find out their status and when it does cluster replication. Therefore, do not add servers to a cluster until you need the additional capacity or additional redundancy.

In a larger organization, you must decide whether to create large clusters or small clusters. A larger cluster is better able to absorb the workload when a cluster server fails. If you have a cluster with only two servers, for example, if one of the servers fails, the other server must absorb 100% of the failed server's workload. That means that you could run each server at only 50% of its capacity so that it has enough capacity available to absorb the workload of the other server. If the cluster has six servers, however, each of the remaining five servers must absorb only 20% of the failed server's workload. That means you could run each server at 80% of capacity, and they would still be able to absorb the workload if a server goes down. (Of course, there are other factors that determine how the workload of a failed server is absorbed, such as the way you have distributed replicas across the cluster servers.)

Hardware considerations

The number of servers you decide to include in a cluster can be affected by the amount of disk space and the processing power of each server. Keep the following in mind as you decide which hardware to use in your cluster: