Load-balancing, by definition, is dividing the amount of work that a computer has to do between one or more additional computers so that more work gets done in the same amount of time and, in general, all processing get done faster.
There are many reasons to institute load-balancing for your applications. The two most popular are:
- Response Time – When you institute load-balancing for your application, one of the biggest benefits is the boost you can look forward to in load time. With two or more boxes sharing the load of your web requests, each of them will be running less of a load than 1 server alone. This means there are more resources available to fulfill your page requests.
- Redundancy – With load-balancing, you inherit a bit of redundancy. For example, if your application is balanced across 3 servers and one of them dies completely, then the other two can keep running and your website visitors will not even notice any downtime. Any load-balancing solution worth its salt will immediately stop trying to send traffic to the down server.
- Less expensive than hardware solutions.
- Some packages have many more configuration and customization options allowing specific tailoring to your needs.
- Most packages cannot handle large sites or complex networks.
- Packages that will support larger systems require an abundant amount of hardware.
- Hardware-centric approach is typically more robust than software options.
- Processes traffic at the network level, which is nominally more efficient than software decryption.
- Work with any OS or platform.
- Higher costs than normally associated with software based solutions