We must have heard about the term Load balancer while developing the new applications. In this short post, let’s try to have look at some basic terms.
What is it ?
The term load balancing refers to evenly distributing load incoming network traffic across the group of backend servers/resources.
Azure load balancer works on layer 4 of the OSI model. It distributes the inbound requests that come to the load balancer’s front end to backend pool instances.
The distribution takes place on basis of the load balancing rules and data gathered by health probes. The backend pool might be set of virtual machines or instances in a virtual machine scale set.
Public Load Balancer
This type of load balancer can provide outbound connections to virtual machines inside the virtual network. This is done by converting the Private IPs from the virtual machines to Public IPs. This type of load balancers are generally used to load balance internet traffic to the virtual machines.
Internal (i.e. Private) Load Balancer
This type of load balancer is used where private IPs are needed at the frontend only. These type of load balancers are used to balance traffic internal to the virtual network.
Load balancers are generally useful for increasing scalability and throughput of the applications. The term scalability refers to ability of the system to handle growing amount of work, by adding resources to the system. The public load balancers distribute the requests evenly to the backend resources like virtual machines, ensuring that more requests can be processed per second, thus increasing the throughput of the system.
The load balancers also have health probes, which can be used to monitor the load balanced resources. Based on the their health, load balancer can take some decisions on whether to send traffic to that resource or not.
I hope you found this information useful. Let me know your thoughts.