AWS Application Load Balancer
Understand how an Application Load Balancer handles HTTP and HTTPS routing with listener rules for modern AWS applications.
AWS Application Load Balancer is the web-aware load balancer in AWS and is designed for HTTP and HTTPS traffic that needs content-based routing. For DevOps teams, it matters because it allows a single public endpoint to fan traffic out to many services based on hostnames, paths, or headers. Instead of relying on one fragile manual configuration, you can design a repeatable service boundary that stays stable while the workload behind it changes.
Core ideas
The main ideas to understand are ALB evaluates listener rules in priority order so the first matching rule wins; path-based routing can send /api traffic to one target group and /static traffic to another; host-based routing lets multiple domains share the same balancer without separate infrastructure; and integrations with ECS, Lambda, and EKS make ALB a common entry point for container and serverless platforms. These details shape architecture decisions, but they also shape day-to-day operations. When a team chooses defaults without understanding how the service behaves under failure, scale, or security review, the platform often becomes harder to debug than the application itself.
| Feature | ALB behaviour | Why it matters |
|---|---|---|
| Protocol | HTTP and HTTPS | Understands application-layer requests |
| Routing | Host and path rules | Allows shared ingress patterns |
| Targets | EC2, ECS, IPs, Lambda | Fits many deployment models |
From an operations perspective, the goal is to design listener rules that are easy to reason about and keep default actions explicit so unmatched requests have a predictable result. The comparison below highlights the choices that usually matter first. It is often better to start with a simpler design and add sophistication only after metrics, incidents, or delivery requirements prove the change is necessary.
Practical commands
aws elbv2 describe-listeners --load-balancer-arn arn:aws:elasticloadbalancing:REGION:ACCOUNT:loadbalancer/app/my-alb/1234567890abcdef
aws elbv2 describe-rules --listener-arn arn:aws:elasticloadbalancing:REGION:ACCOUNT:listener/app/my-alb/1234567890abcdef/abcdef1234567890
Practical CLI checks make the service easier to support in real environments. Use the commands below to inspect the current state and confirm that automation matches intent. Before you promote a change, verify rule priorities, default actions, and certificate bindings whenever you add a new application path or domain. A safe default is small, explicit rulesets so troubleshooting does not become a priority-order guessing game. That discipline makes later troubleshooting, scaling, and security reviews far less painful.
Routing style
Which ALB feature routes requests based on URL patterns like /api or /admin?
Rule evaluation
How does an ALB choose which listener rule to apply?