https://d1.awsstatic.com/whitepapers/architecture/AWS-Performance-Efficiency-Pillar.pdf
- Instances
- EC2 -- SSD, GPS, Field Programmable Gate Arrays (FPGA), Burstable instance families, Advanced computing features
- Containers
- Amazon Elastic Container Service (ECS) allows to run docker containers
- Functions
- Lambda
- Elasticity
Storage | Services | Latency | Throughput | Shareable
Block | EBS, EC2 | lowest | single | mounted on single instance, copies via snapshots
File system | EFS | low | multiple | many clients
Object | S3 | low | web scale | many clients
Archival | Glacier | up to hour | high | no
- S3
- EBS
- EFS
- EC2 instance store
- Glacier
• Relational Online Transaction Processing (OLTP)
Oracle, Microsoft SQL Server, MySQL, MariaDB, PostgreSQL, Aurora
• Non-relational databases (NoSQL)
Amazon DynamoDB
• Data warehouse and Online Analytical Processing (OLAP)
Amazon Redshift
• Data indexing and searching
Amazon Elasticsearch Service (Amazon ES)
Amazon CloudFront
- Content Delivery Network (CDN)
- Highly secure global CDN to get content to your viewers with low latency and high transfer speeds
Amazon VPC
- Virtual Private Cloud
- Isolate cloud resources with your own private virtual network
AWS Direct Connect
- Dedicated Network Connections to AWS
- Dedicated network connection between your network and your Amazon VPC
Elastic Load Balancing
- Load Balancing
- Automatically distribute application traffic across multiple Amazon EC2 instances in the cloud
Amazon Route 53
- Domain Name Service (DNS)
- Highly available and scalable cloud DNS to connect user requests to your AWS resources
- Benchmarking
- AWS CodeDeploy and AWS CloudFormation
- Load Testing
- CloudWatch
- Active and Passive
- Phases
- Generation – scope of monitoring, metrics, and thresholds
- Aggregation – creating a complete view from multiple source
- Real-time processing and alarming – recognizing and responding
- Storage – data management and retention policies
- Analytics – dashboards, reporting, and insights
Technique | Applies To | Use | Gains
Caching | Read-heavy | Space (Memory) | Time
Partitioning | Write-heavy | Size & Complexity | Time
Compression | Large data | Time | Space
Buffering | Many requests | Space & Time | Efficiency \
- Application Level
- Amazon ElastiCache
- Database Level
- RDS read replicas
- Geographic Level
- CloudFront
Amazon DynamoDB, which manages table partitioning for you automatically.
CloudFront
Amazon SQS, which allows you to decouple producers from consumers using a queue.