SysPadExamples › Photo sharing app

Photo sharing app

Instagram-style feed: media CDN, autoscaled API, Redis feed cache, social-graph DB, search, and async image processing.

Cache offload, read fan-out, and an async upload pipeline at 30k RPS.

DNS Route 53 Media CDN CloudFront Photo Storage S3 WAF WAF Load Balancer ALB Feed API EKS Auth Cognito AT LIMIT Feed Cache ElastiCache Social Graph DB Aurora Search OpenSearch AT LIMIT Media Index DynamoDB Upload Queue SQS Image Processor Lambda Thumbnails S3

How it works

Feed Cache
Absorbs ~92% of feed reads, so the social graph DB only ever sees the misses.
Upload Queue
Uploads return instantly; the heavy image work runs off this queue, clear of the response path.

Request flows

View feed

  1. DNS
  2. WAF
  3. Load Balancer
  4. Feed API
  5. Auth
  6. Feed Cache
  7. Social Graph DB

Search photos

  1. DNS
  2. WAF
  3. Load Balancer
  4. Feed API
  5. Search
  6. Media Index

Upload photo

  1. DNS
  2. WAF
  3. Load Balancer
  4. Feed API
  5. Upload Queue
  6. Image Processor
  7. Thumbnails
  8. Media Index

Other reference architectures

Open this architecture in SysPad · All examples