Infrastructure Diagram

graph TD subgraph dev["Dev"] DevApp["App"] DevDB["DB"] end subgraph staging["Staging"] StagLB["Load Balancer"] StagApp["App"] StagDB["DB"] StagCache["Cache"] StagLB --> StagApp StagApp --> StagDB StagApp --> StagCache end subgraph prod["Production"] ProdCDN["CDN"] ProdLB["Load Balancer"] ProdApp["App"] ProdDB["DB"] ProdCache["Cache"] ProdCDN --> ProdLB ProdLB --> ProdApp ProdApp --> ProdDB ProdApp --> ProdCache end

Environments

Env URL Purpose Services Config notes
Dev http://localhost:3000 Local development App, DB {Notes}
Staging {staging URL} QA / integration testing App, DB, Cache, LB {Notes}
Production {prod URL} Live system App, DB, Cache, LB, CDN {Notes}

Infrastructure Components

Component Type Provider Sizing Notes
App Server Compute {AWS EC2 / GCP GCE / Heroku / ...} {Instance size} {Notes}
Database Managed DB {RDS / Cloud SQL / PlanetScale / ...} {Size} {Notes}
Cache In-memory {ElastiCache / Upstash / ...} {Size} {Notes}
CDN Content delivery {CloudFront / Cloudflare / ...} β€” {Notes}

CI/CD Pipeline

flowchart LR Code["πŸ“ Code\nPush / PR"] Build["πŸ”¨ Build\nDocker image"] Test["πŸ§ͺ Test\nUnit + Integration"] Deploy["πŸš€ Deploy\nStaging β†’ Prod"] Code --> Build --> Test --> Deploy