
Ntombizakhona MabasoExam Guide: Solutions Architect - Associate ⚡ Domain 4: Design Cost-Optimized Architectures 📘 Task...
Exam Guide: Solutions Architect - Associate
⚡ Domain 4: Design Cost-Optimized Architectures
📘 Task Statement 4.2
First decide what type of compute the workload needs (EC2, Lambda, Fargate, containers, edge, hybrid), then choose how to pay for it, then right-size and scale it so you are not paying for idle capacity.
You are balancing:
1 Performance
2 Availability
3 Elasticity
4 Operational Overhead
5 Purchasing Model
These help you understand and allocate compute cost.
1 Cost Explorer: Analyse historical spend and trends
2 AWS Budgets: Alert when spending or usage exceeds thresholds
3 AWS Cost and Usage Report (CUR): Detailed raw billing data for deeper optimization analysis
Cost and performance can both change based on placement:
1 Running in multiple AZs may cost more, but is often required for production HA
2 Data transfer between Regions can add cost
3 Some workloads can stay single-AZ if non-critical and cheaper
Production → usually Multi-AZ
Dev or test or batch → sometimes cheaper single-AZ is acceptable
“Unpredictable short-term workload” → On-Demand
“Interruptible batch/stateless jobs” → Spot
“Steady production workload for 1–3 years” → Savings Plans or RIs
Sometimes cheaper and faster architecture comes from moving compute closer to users or reducing origin load.
Examples:
The basics:
| Workload | Family |
|---|---|
| General Purpose | t, m |
| Compute Optimized | c |
| Memory Optimized | r, x |
| Storage Optimized | i, d, some specialized families |
| GPU / ML / graphics | p, g |
1 Don’t choose memory-optimized if CPU-bound
2 Don’t over-size “just in case”, rather consider scaling options
3 Burstable (T family) can be cost-effective for low and variable baseline usage
Cost optimization often comes from better utilization:
1. Containers pack workloads more efficiently onto shared compute
2. Fargate avoids paying for idle EC2 hosts you manage yourself
3. Lambda is great for spiky or short-lived workloads
4. Microservices can scale only the busy components, not the whole app
“Need to pause and resume instance to save cost” → hibernation (if supported).
Best for:
Best for:
Best for:
-Deploying and scaling virtual appliances such as firewalls and inspection tools
Choose the simplest load balancer that meets protocol/routing needs.
Production web app → *horizontal scaling *
Short-lived or intermittent workload → maybe hibernation / scheduled scaling
Best when:
Best when:
Best when:
Not every workload needs the same cost level.
Examples:
1. CPU-heavy app → C family
2. Memory-heavy app → R family
3. Small and variable baseline → T family
4. General purpose app → M family
1 Start from actual CPU, memory and network needs
2 Use monitoring to reduce overprovisioning
3 Scale horizontally where possible instead of using one oversized box
| Requirement | Compute |
|---|---|
| Steady long-term workload | Savings Plans / Reserved Instances |
| Interruptible batch or fault-tolerant workload | Spot Instances |
| Spiky event-driven workload | Lambda |
| Containerized app, no server management | Fargate |
| Need OS control or legacy app | EC2 |
| Low and variable baseline workload | T family |
| Compute-heavy workload | C family |
| Memory-heavy workload | R family |
| Pause or resume EC2 to save cost | EC2 hibernation |
| HTTP/HTTPS routing with app logic | ALB |
| TCP/UDP with static IPs/high performance | NLB |
| Virtual network appliances | Gateway Load Balancer |
1. [ ] I can choose the right compute service (EC2 vs Lambda vs Fargate) based on workload pattern
2. [ ] I understand when to use On-Demand, Spot, Reserved Instances, and Savings Plans
3. [ ] I can right-size EC2 by family and size instead of overprovisioning
4. [ ] I know when horizontal scaling is more cost-effective than vertical scaling
5. [ ] I can differentiate production vs non-production availability requirements
6. [ ] I know when hibernation or scheduled scaling can reduce cost
7. [ ] I can choose the right load balancer (ALB vs NLB vs GWLB) based on protocol and need
8. [ ] I understand how tags and cost tools help track and manage compute spending
Compute always has so many resources.
1. Cost Explorer
2. AWS Budgets
3. Cost and Usage Report (CUR)
4. Cost Allocation Tags
1. Spot Instances
2. Reserved Instances
3. Savings Plans
1. EC2
2. Lambda
3. Fargate
4. ECS
5. EKS
1. EC2 Auto Scaling
2. EC2 Hibernation
3. EC2 instance types
4. Burstable instances
5. Compute Optimizer
1. Application Load Balancer
2. Network Load Balancer
3. Gateway Load Balancer
1. CloudFront Functions
2. Lambda@Edge
3. AWS Outposts
4. AWS Snowball Edge And Snow Family
🚀