Application Load Balancer (ALB) is a modern AWS load balancing service designed for:
- HTTP applications
- HTTPS applications
- Microservices
- Containerized workloads
- Cloud-native architectures
Why ALB is Needed
Modern applications often contain:
- Microservices
- REST APIs
- Containers
- Multiple backend services
These applications require:
- Intelligent traffic routing
- Scalability
- High availability
- Fault tolerance
Without ALB
Users
|
Single EC2 Instance
|
Application Failure Risk
Problems:
- Single point of failure
- No scalability
- Poor fault tolerance
- Difficult traffic management
With ALB
Users
|
Application Load Balancer
/ | \
Service-A Service-B Service-C
ALB intelligently distributes traffic across backend services.
OSI Layer
Layer 7 — Application Layer
ALB understands:
- HTTP requests
- URLs
- Headers
- Hostnames
- Query parameters
Main Responsibilities of ALB
| Feature | Purpose |
|---|---|
| Traffic Distribution | Balance incoming requests |
| Path-Based Routing | Route by URL path |
| Host-Based Routing | Route by domain name |
| SSL Termination | Handle HTTPS traffic |
| Health Checks | Detect unhealthy targets |
High-Level ALB Architecture
Internet Users
|
Application Load Balancer
|
------------------------------------------------
| | |
Target Group-A Target Group-B Target Group-C
| | |
EC2 / ECS Microservices Lambda Functions
How ALB Works Internally
1. Client sends HTTP/HTTPS request
2. DNS resolves ALB endpoint
3. ALB receives request
4. Listener evaluates routing rules
5. Request routed to target group
6. Healthy target processes request
7. Response returned to client
Core Components of ALB
- Listener
- Listener Rules
- Target Groups
- Health Checks
- Availability Zones
1. Listener
Listener defines:
Protocol + Port
Examples
HTTP : 80
HTTPS : 443
Architecture
Users
|
Listener : HTTPS 443
|
Routing Rules
2. Listener Rules
Rules define:
How requests are routed
Types of Routing
- Path-based routing
- Host-based routing
- Header-based routing
- Query-string routing
3. Path-Based Routing
ALB can route requests based on URL paths.
Example
/api → API Service
/orders → Order Service
/payment → Payment Service
Architecture
Users
|
ALB
|
------------------------------------------------
| | |
/api /orders /payment
| | |
API Service Order Service Payment Service
Benefits
- Microservices support
- Centralized routing
- Efficient traffic management
4. Host-Based Routing
Requests can be routed using hostnames.
Example
api.company.com → API Service
admin.company.com → Admin Portal
shop.company.com → E-Commerce Service
Architecture
Users
|
ALB
|
------------------------------------------------
| | |
api.company.com admin.company.com shop.company.com
5. Target Groups
Target groups contain:
- EC2 instances
- ECS containers
- IP addresses
- Lambda functions
Architecture
ALB
|
Target Group
|
------------------------
| | |
EC2-1 EC2-2 EC2-3
6. Health Checks
ALB continuously checks:
Backend target health
Example
GET /health
Health Check Flow
ALB
|
Health Check
|
Healthy Target → Traffic Allowed
Unhealthy Target → Traffic Blocked
Benefits
- Automatic failure detection
- Improved availability
- Fault tolerance
ALB and Auto Scaling
ALB integrates with:
Auto Scaling Groups (ASG)
Architecture
Users
|
ALB
|
Auto Scaling Group
|
---------------------------------
| | |
EC2 EC2 EC2
Benefits
- Automatic scaling
- Dynamic traffic balancing
- Self-healing infrastructure
ALB with ECS and Kubernetes
ALB is widely used with:
- Amazon ECS
- EKS Kubernetes clusters
Kubernetes Architecture
Internet
|
ALB Ingress Controller
|
Kubernetes Services
|
Pods
ALB with Lambda
ALB supports:
Serverless architectures
Architecture
Users
|
ALB
|
Lambda Functions
SSL Termination
ALB can terminate:
HTTPS SSL/TLS traffic
Benefits
- Backend CPU optimization
- Centralized certificate management
- Simplified HTTPS handling
WebSocket Support
ALB supports:
WebSocket connections
Use Cases
- Chat applications
- Real-time dashboards
- Live notifications
ALB Security Features
- AWS WAF integration
- AWS Shield integration
- Security groups
- HTTPS support
Monitoring ALB
ALB integrates with:
- CloudWatch
- CloudTrail
- AWS X-Ray
Important Metrics
- Request count
- Target response time
- HTTP 5xx errors
- Healthy host count
Production Best Practices
- Use HTTPS everywhere
- Enable multi-AZ deployment
- Configure proper health checks
- Use path-based routing for microservices
- Enable access logs
- Integrate with Auto Scaling
Common Production Problems
- Misconfigured health checks
- Incorrect routing rules
- SSL certificate expiration
- Backend timeout issues
- Unhealthy targets
Production-Grade ALB Architecture
Internet Users
|
CloudFront CDN
|
AWS WAF
|
Application Load Balancer
|
------------------------------------------------
| | |
Microservice-A Microservice-B Microservice-C
|
Auto Scaling Groups
|
RDS / DynamoDB / S3
Advantages of ALB
- Advanced Layer 7 routing
- Excellent microservices support
- Cloud-native integration
- High availability
- Managed infrastructure
Disadvantages of ALB
- Supports only HTTP/HTTPS
- Slightly higher latency than NLB
- Complex routing configuration in large systems
Real-World Example
E-Commerce Platform
Users
|
ALB
|
------------------------------------------------
| | |
/products /orders /payments
| | |
Product Service Order Service Payment Service
Interview Answer
Application Load Balancer (ALB) is a Layer 7 AWS load balancer designed for HTTP and HTTPS traffic.
It intelligently routes requests based on:
- URL paths
- Hostnames
- Headers
- Query strings
ALB is widely used in:
- Microservices architectures
- Containerized applications
- Kubernetes environments
- Modern cloud-native systems
ALB supports:
- Target groups
- Health checks
- SSL termination
- Auto Scaling integration
- AWS WAF integration
Quick Summary Table
| Feature | ALB Capability |
|---|---|
| OSI Layer | Layer 7 |
| Protocols | HTTP/HTTPS |
| Path Routing | Yes |
| Host Routing | Yes |
| Microservices Support | Excellent |
| Container Support | Excellent |
Useful Internal Links
- AWS Interview Questions
- Cloud Computing Interview Questions
- DevOps Interview Questions
- Docker Interview Questions
- Kubernetes Interview Questions
Final Conclusion
Application Load Balancer (ALB) is a critical AWS networking service used in modern cloud-native architectures.
It provides:
- Intelligent Layer 7 routing
- High availability
- Microservices traffic management
- Container orchestration integration
- Scalable cloud networking
Modern production systems heavily rely on ALB for:
- Microservices
- Kubernetes ingress
- REST APIs
- Cloud-native applications
Understanding ALB deeply is essential for AWS architects, DevOps engineers, cloud engineers, and infrastructure professionals.