Once you're dealing with very high traffic site or some mission critical or Business critical applications it may be necessary to employ multiple servers.
There are a variety of services, which definitely should not be inaccessible. For those of you who must run services, which will run for weeks, months and years without a single failure It's good to deploy a high availability system or use a solution such as web farm clustering, load balancing, or to use virtualization or cloud computing use.
Network Load Balancing (NLB)
allows you to connect up to 32 servers. These servers have a common virtual IP address. client, which communicates with the virtual address, in fact, can actually communicate with any node. This provides continuous service availability.
In case of any of the nodes, the client communicates with other nodes. The advantage of NLB is also the possibility of decomposition of the traffic load on each node. This solution is quite cheap, even the administration.
This technology allows you to combine 2, 4, or up to 8 servers. The servers are connected to one disc data storage system. Clustered service can run on one of the nodes and only if there is any failure, so the service is started on another node, and reads the disk array data. Cluster performance will not rise, but only for high availability services. Use of certified hardware is commonplace in this case.
Cluster is not a solution for everything and if you use this technology have actually doubled everything from the electricity supply, to infrastructure services such as DNS (Domain Name System).
I have seen cases where the system broke down at the clustered disk array controller and the expensive system was at the moment for anything.
Cloud computing see here