Match the load balancer to the traffic decision
Application Load Balancer
Layer 7 HTTP/HTTPS routing. Choose it when rules must inspect application content such as host, path, header, method, query string or source IP.
Network Load Balancer
Layer 4 connection and flow distribution for TCP, UDP, TLS and supported QUIC protocols. It suits high-throughput network traffic and static-IP requirements.
Gateway Load Balancer
Layer 3 transparent gateway for scaling virtual appliances such as firewalls and intrusion prevention or deep-packet inspection systems.
Architecture scenarios that reveal the answer
One domain, several microservices
Requests for /orders must reach an orders target group while /catalog reaches a catalog target group. Choose an ALB because listener rules evaluate HTTP request content and health checks operate per target group.
Low-latency TCP service with allow-listed IPs
A partner requires fixed destination IP addresses and the application uses TCP rather than HTTP. Choose an NLB, enable the required Availability Zones, and optionally associate an Elastic IP per enabled subnet for an internet-facing design.
Central inspection for multiple application VPCs
Traffic must pass transparently through a scalable fleet of third-party firewalls. Choose a GWLB with Gateway Load Balancer endpoints and route tables that insert the appliance service into the traffic path.
Load balancing and Auto Scaling solve different problems
Elastic Load Balancing scales its own capacity and routes around unhealthy registered targets. EC2 Auto Scaling launches, replaces or terminates instances according to desired capacity and scaling policies. Attach the target group to the Auto Scaling group so instances register and deregister automatically.
Health-check trap: an instance can be running while the application is unhealthy. Use a health-check endpoint that tests the dependency level needed for safe traffic, configure grace periods for startup, and inspect the target-group reason code before replacing infrastructure.
Real-world troubleshooting sequence
- Listener: confirm the protocol, port, certificate and default action.
- Rule: for ALB, verify priority and whether the request actually matches host or path conditions.
- Target group: verify target type, port, protocol and registered targets.
- Health check: inspect path, success codes, timeout, thresholds and application startup time.
- Network path: verify load-balancer and target security groups, NACLs and return traffic.
- Capacity: compare healthy-host count, request or connection metrics, response time and Auto Scaling activity.
Fast SAA-C03 decision rule
HTTP content decides the destination: ALB. Network flow, non-HTTP protocol or static IP matters: NLB. Traffic must traverse a scalable virtual-appliance fleet: GWLB.
Official AWS references
Frequently asked questions
Which AWS load balancer supports path-based routing?
Application Load Balancer supports Layer 7 rules based on request content, including URL paths and host headers, making it suitable for HTTP and HTTPS applications and microservices.
Which load balancer should I choose when clients require static IP addresses?
A Network Load Balancer provides a static IP address for each enabled Availability Zone and can optionally use an Elastic IP per subnet for an internet-facing load balancer.
What is Gateway Load Balancer used for?
Gateway Load Balancer deploys and scales fleets of virtual network appliances such as firewalls, intrusion prevention systems and deep-packet inspection systems while preserving transparent traffic flow.
Does a load balancer replace EC2 Auto Scaling?
No. Elastic Load Balancing distributes traffic and checks target health. EC2 Auto Scaling maintains and adjusts instance capacity. Used together, new instances register with target groups and terminated instances deregister.