https://haojian.github.io/DSC102SP24/static_files/presentations/6CloudComputing.pdf
Main idea:
Compute, storage, memory, networking, etc. are virtualized and
exist on remote servers; rented by application users
Pros:
- Manageability: Managing hardware is not user’s problem
- Pay-as-you-go: Fine-grained pricing economics based on
actual usage (granularity: seconds to years!)
- Elasticity: Can dynamically add or reduce capacity based on
actual workload’s demand
Infrastructure as a Service
- Compute: EC2, Lambda
- Storage: S3, Glacier, EBS
- Network: Cloudfront, VPC
AWS EC2 has a wide range of use cases since almost everything can be configured when using this service. The most common use cases of AWS EC2 are:
- Hosting web sites
- Developing and testing applications or complex environments
- High performance computing
- Disaster recovery
General use cases of AWS Lambda:
- Automating tasks
- Processing objects uploaded to Amazon S3
- Real-time log analyzing