Technical ‐ Solution Architect ‐ Classic Solution Architectures - Yves-Guduszeit/Interview GitHub Wiki

Stateless Web App: WhatIsTheTime.com

  • Public EC2 instance + Elastic IP
  • Scaling vertically
  • Scaling horizontally
  • DNS Query on public EC2 instances without Elastic IP (Route 53: A Record)
  • Add Elastic Load Balancer + Health Checks on public network, EC2 instances on private network restricted by Security Group (Route 53: Alias Record)
  • Add Auto Scaling Group
  • Deploy on multiple Availability Zones
  • Use Reserved Capacity

Stateful Web App: MyClothes.com

  • Introduce Stickiness (Session Affinity)
  • Introduce User Cookies
  • Introduce Server Session (ElastiCache or Amazon DynamoDB)
  • Storing User Data in a database (Amazon RDS)
  • Scaling Reads (Read Replicas)

Stateful Web App: MyWordPress.com

  • RDS Multi AZ
  • Aurora MySQL - Multi AZ - Read Replicas
  • Storing images with EBS
  • Add EC2 instances into multi Availability Zones
  • Storing images with EFS connected to ENI on instances

Typical architecture: Web App 3-tier

image

Elastic Beanstalk

  • Managed service that deploys and scales applications easily
  • Web Server Tier vs Worker Tier