How to choose the correct load balancer type
Selin Goksu
Cloud Technical Solutions Specialist, Networking, Google
Muhammad Farrukh Munir
Cloud Technical Solutions Specialist, Google
A load balancer distributes incoming user traffic across multiple copies of your application. This helps reduce the risk of your applications experiencing performance issues, increasing availability and performance even under high load. Google's Cloud Load Balancing is built on reliable, high-performing technologies — the same technologies that power Google's own products.
Google Cloud offers various load balancers and you must first determine the traffic type handled by load balancer to make your selection. We can classify load balancers under two main categories:
(1) Application Load Balancers
(2) Network Load Balancers
This is illustrated in the diagram below:
Figure 1. Google Cloud Load Balancing.
What are the major differences in capabilities?
You'd choose an Application Load Balancer when you need a Layer 7 load balancer for your applications with HTTP(S) traffic.
Figure 2. Application Cloud Load Balancing.
You'd choose a Network Load Balancer which can be one of two types:
(i) Proxy Network Load Balancer: You would choose a proxy Network Load Balancer if you want to configure a reverse proxy load balancer with support for advanced traffic management or globally distributed backends.
(ii) Passthrough Network Load Balancer: You would choose a passthrough Network Load Balancer to preserve client source IP addresses, if you prefer direct server return, or want to support additional protocols like UDP, ESP, and ICMP.
Figure 3. Network Load Balancing
For further reading
If you want to learn more about the various load balancing flavors, refer the following links: