Existing middleware-based load balancing services do not adequately address several key requirements such as server-side transparency, centralized load balancing, support for stateless replication and load/health monitoring. This forces continuous re-development of application-specific load balancing services. Not only does re-development increase deployment costs of distributed applications, it also increases the potential of producing non-optimal load balancing implementations, since proven load balancing service optimizations cannot be reused directly.
During the past five years, application delivery controllers and server load balancers have emerged as one of the most important technologies in solving the problem of performance and accessibility for distributed application systems. In its most basic form, a load balancer provides the ability to direct application users to the best performing, accessible server. Should one of the servers (or applications on that server) become inaccessible, the load balancer will take that server off-line, while automatically re-routing users to other functioning servers. In addition, using various adaptive load balancing algorithms, an intelligent load balancer can distribute users to servers that offer the best possible performance by dynamically interrogating key server elements such as number of concurrent connections and CPU/memory utilization. To further enhance the user experience, advanced load balancers can provide SSL acceleration by offloading encryption/decryption processes from the application servers, thereby dramatically increasing their performance, while decreasing the time and costs associated with certificate management.
In general terms, use of external application delivery controllers and intelligent load balancers can provide the following benefits:
- Adaptive Load Balancing Appliance can be used for a larger range of distributed systems, since they need not be designed for any specific type of application.
- Since a single load balancing appliance can be used for many types of applications, the cost of developing a load balancing service for specific types of applications can be avoided, thereby reducing deployment costs.
Modern application architecture typically requires load balancing functionality for scaling, traffic distribution and management of flows across different parts of a cloud architecture. Most application developers look for simple, light-weight, software based offerings to meet these requirements and integrate into their existing frameworks. KEMP's virtual, containerized and cloud-based load balancers allow for portability of critical application functionality typically only available in hardware solutions. This, combined with an intuitive UI, comprehensive API and interfaces for Python, Java and Powershell make LoadMaster the load balancer of choice for modern application deployments.