Task Statement 4.2: Design cost-optimized compute solutions.
📘AWS Certified Solutions Architect – (SAA-C03)
1. What is an Elastic Workload?
An elastic workload is an application that can automatically adjust resources based on demand.
- When demand increases → add more resources
- When demand decreases → remove resources
This helps:
- Reduce cost
- Improve performance
- Avoid over-provisioning
Typical AWS services used:
- Amazon Web Services EC2
- Auto Scaling
- Elastic Load Balancer
2. Scaling Methods Overview
There are two main scaling approaches:
| Scaling Type | Description |
|---|---|
| Horizontal Scaling | Add/remove instances |
| Vertical Scaling | Increase/decrease power of a single instance |
3. Horizontal Scaling (Scale Out / Scale In)
Definition
Horizontal scaling means:
- Adding more EC2 instances → scale out
- Removing EC2 instances → scale in
How It Works
- Multiple instances run the same application
- Traffic is distributed using a Load Balancer
- Auto Scaling automatically adjusts number of instances
Key AWS Services
- EC2 Auto Scaling Group (ASG)
- Elastic Load Balancer (ALB/NLB)
Advantages
- High availability
- Fault tolerance
- Easy to scale dynamically
- No downtime during scaling
Limitations
- Application must support distributed architecture
- Requires load balancing
Exam Tip
👉 Horizontal scaling is preferred in AWS and is the default recommendation.
4. Vertical Scaling (Scale Up / Scale Down)
Definition
Vertical scaling means:
- Increasing CPU, RAM, or storage of a single instance
Example:
- Change instance type from t3.micro → m5.large
Advantages
- Simple to implement
- No need to redesign application
Limitations
- Downtime required (instance restart)
- Limited by maximum instance size
- No fault tolerance
Exam Tip
👉 Vertical scaling is used when:
- Application cannot be distributed
- Database systems (e.g., single-node databases)
5. Horizontal vs Vertical (Exam Comparison)
| Feature | Horizontal Scaling | Vertical Scaling |
|---|---|---|
| Availability | High | Low |
| Scalability | Unlimited | Limited |
| Downtime | No | Yes |
| Cost Efficiency | Better | Can be expensive |
| AWS Recommendation | ✅ Preferred | ⚠️ Limited use |
👉 Always choose horizontal scaling unless the question restricts you
6. Auto Scaling in AWS
Auto Scaling automatically adjusts the number of EC2 instances.
Types of Scaling Policies
1. Dynamic Scaling
- Adjusts based on metrics (CPU, memory, etc.)
Types:
- Target Tracking (most common)
- Step Scaling
- Simple Scaling
2. Scheduled Scaling
- Scale at specific times
Example: increase capacity during business hours
3. Predictive Scaling
- Uses historical data to predict future demand
Key Metrics Used
- CPU Utilization
- Network traffic
- Request count (via load balancer)
Important Components
Auto Scaling Group (ASG)
- Defines:
- Minimum instances
- Maximum instances
- Desired capacity
Exam Tip
👉 If the question says:
- “automatically adjust capacity” → use Auto Scaling
- “handle unpredictable traffic” → Auto Scaling + Load Balancer
7. EC2 Hibernation
Definition
EC2 hibernation allows you to:
- Stop an instance
- Save its RAM (memory) to disk
- Resume later from the same state
How It Works
- RAM is saved to EBS root volume
- Instance resumes quickly
- Applications continue from where they stopped
Key Features
| Feature | Description |
|---|---|
| State saved | RAM + OS state |
| Resume time | Faster than reboot |
| Storage | Requires EBS |
| Billing | Pay for EBS only when stopped |
When to Use (Exam Focus)
Use EC2 hibernation when:
- Application startup time is long
- You need to preserve in-memory data
- You want cost savings during idle time
Limitations
- Supported instance types only
- Maximum RAM size limits
- Root volume must be encrypted
Stop vs Hibernate vs Terminate
| Action | Result |
|---|---|
| Stop | OS stops, RAM lost |
| Hibernate | RAM preserved |
| Terminate | Instance deleted |
Exam Tip
👉 If question says:
- “resume quickly with same state” → Hibernate
- “save memory state” → Hibernate
8. Choosing the Right Scaling Strategy
Use Horizontal Scaling when:
- Application supports multiple instances
- High availability is required
- Traffic is unpredictable
Use Vertical Scaling when:
- Application cannot scale out
- Single-node architecture
- Temporary performance boost needed
Use Auto Scaling when:
- Workload is dynamic
- You want cost optimization
Use EC2 Hibernation when:
- Need fast resume
- Long startup time
- Temporary pause of workloads
9. Common Exam Scenarios
Scenario 1
Application traffic changes frequently
👉 Use:
- Auto Scaling + Load Balancer
- Horizontal scaling
Scenario 2
Legacy application runs on a single server
👉 Use:
- Vertical scaling
Scenario 3
Application takes long time to start and must resume quickly
👉 Use:
- EC2 Hibernate
Scenario 4
Need to minimize cost during idle time but resume later
👉 Use:
- EC2 Hibernate or Stop
10. Key Takeaways (Must Remember)
- ✅ Horizontal scaling = preferred in AWS
- ✅ Auto Scaling = core for elasticity
- ✅ Vertical scaling = limited & requires downtime
- ✅ EC2 Hibernate = preserves RAM state
- ✅ Load Balancer + ASG = best practice architecture
Final Exam Tips
- Always think: “Can this be distributed?” → choose horizontal scaling
- Look for keywords:
- “automatic”, “elastic” → Auto Scaling
- “quick resume” → Hibernate
- “single instance limitation” → Vertical scaling
- AWS prefers:
- Managed services
- Scalable architecture
- Cost-efficient solutions
