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.

FeatureALB behaviourWhy it matters
ProtocolHTTP and HTTPSUnderstands application-layer requests
RoutingHost and path rulesAllows shared ingress patterns
TargetsEC2, ECS, IPs, LambdaFits 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.

Exercise

Routing style

Which ALB feature routes requests based on URL patterns like /api or /admin?

Exercise

Rule evaluation

How does an ALB choose which listener rule to apply?

Continue Learning

Explore Related Topics

Related Resources