kantver - Fotolia
Server load balancing is a critical computing resource for modern enterprise applications.
Whether the application lives in the cloud or a local data center, load balancing directs and optimizes traffic across computing assets like servers, network segments and storage. Load balancing improves application performance, optimizes resource use and allows applications to scale horizontally while maintaining resilience.
The basic purpose of any software or hardware load balancer is to accept incoming traffic requests and distribute them symmetrically or asymmetrically over the servers within a cluster, according to a schedule or other algorithms. For example, a server load balancer distributes traffic across four instances of a mission-critical application in a compute cluster. When a cluster node fails or requires service, the load balancer rebalances traffic to the remaining three.
Notable features of a server load balancer
A server load balancer's core functionality involves basic load balancing, content switching and traffic management. For example, a load balancer can direct traffic at the L2 to L4 network layers using MAC address, IP address and TCP port information.
It should have network compatibility to integrate into any data center. Look for a load balancer that supports a wide variety of routing protocols, such as border gateway protocol and open shortest path first, along with common networking technologies like IEEE 802.3ad link aggregation and IEEE 802.1q virtual local area network tagging. Server load balancers can also direct traffic at the L7 network layer, using higher-level information such as HTTP header and SSL session identifiers.
Advanced load balancers can function globally, allowing traffic balancing and direction between different data center sites. This addresses site outages and improves performance for remote users by directing requests to the closest data center. Many load balancers also support session persistence, allowing follow-up requests to continue being directed to the same server, which maintains the user's entire session.
Health monitoring and management integration grows as automation and infrastructure management gain importance in the enterprise. A server load balancer capable of health monitoring can see the infrastructure -- such as network links, hardware, operating system services and even the application -- and tune the traffic distribution to avoid bottlenecks or component faults.
Server load balancers enhance security by supporting features like secure sockets layer (SSL) virtual private networks, allowing detailed control over which users access specific applications.
Server load balancers include various technologies that support application acceleration. Caching from memory located on the server load balancer allows users to retrieve commonly accessed content from the load balancer rather than the server node. This accelerates the server-side response and lowers the load on the server cluster. Compression reduces the volume of data traveling across the network. As applications become more complex and rely on richer content such as streaming media, compression at the server load balancer can enhance application responsiveness from the server. TCP optimization reduces the chattiness -- thus reducing the latency -- of many applications, and offload features can move TCP and SSL activity to the load balancer rather than relying on the back-end servers.
Finally, consider the scalability of any load balancing system. It's unlikely that any resilient, high-availability cluster will rely on one load balancer. The server load balancer should support redundant deployments and be able to scale as cluster or traffic demands increase.
Management features for server load balancers
Today's server load balancers offer a suite of essential and important management features. Management allows IT managers to easily configure the balancers -- preferably from a central portal or web applet. They can also create policies, review real-time traffic statistics like Web requests and connections, and assess traffic moving to and from the balancer.
Management should include comprehensive logging tools. Access logs track administrative activity; audit logs record all transactions; system logs handle the status and any errors in the balancer. Dashboard information reports system load, log storage capacity used, high-availability status and other factors. Alerting and notification features warn administrators about critical events, and simple network management protocol traps can be configured to watch for specific events like failed server components.
Choose a server load balancer that integrates with your existing management platforms, such as a data center infrastructure management tool.
What you should know about application delivery programs
Techniques to accelerate applications
The ideal application performance monitoring tool
How to choose a hardware or software load balancer