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:
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:
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.