Capacity planning is an important step to take when architecting any website or web application. A decision often arises during this process as to whether to scale the server farm vertically or horizontally. Vertical scaling involves adding more resources to existing servers as demands change to meet these needs. Horizontal scaling involves the preemptive or dynamic provisioning of a redundant pool of servers along with a load balancer.
In order to avoid single points of failure in the environment, horizontal scaling is often chosen. In this scenario load balancers are used to effectively distribute incoming traffic across the application servers in a pool of servers. Intelligent mechanisms allow the best-performing and most suitable server to be targeted for individual client requests. In doing so, there are three primary objectives that the load balancer must achieve:
- Steer users to the correct and best performing application instance
- Prevent the risk of server overload through intelligent traffic distribution
- Optimize application traffic streams
Watch Customer Case Study
- On-demand, automated ADC Provisioning in Cloud
- Virtual ADC cluster supporting 167 Million visitors
- Complete visibility and control of ADC fabric
- Multi-Region Active-Active High Availability
- Scale up/down without buying additional ADCs
Apache Load Balancer
Apache load balancer is open source and provides a server application traffic distribution solution. According to recent statistics, it has been utilized in over 100,000 websites. One of its main attractions for providing high availability to web applications is its customizability which allows it to be programmed to operate in a number of different modes depending upon the unique requirements of a given environment. These modes are configured using the MultiProcessing Modules (MPMs). To create your Apache load balancer, you will need to have the Apache module mod proxy and the mod proxy balancer which are readily available for download. The Apache Software Foundation provides support for its user community along with other open source applications.
While native Apache load balancer can meet the needs of some implementations, the programming knowledge and granular manipulation required to optimize it means it is not suitable for every scenario. For this reason, enterprises and service providers use dedicated proprietary hardware/virtual load balancers such as the Kemp LoadMaster to provide application delivery services for enterprise websites and applications.
Benefits of Kemp LoadMaster for websites and applications include:
- Built-in application-specific optimizations
- Full Layer 4-7 load balancer functionality
- Deployment Templates and an intuitive user interface
The decision to use an open source load balancer or dedicated proprietary load balancer for your environment will be based on the unique needs of your application and business. Be sure to examine the benefits that come with either solution to make the best choice for your deployment.