Skip to content

AWS Infrastructure Overview ​

Context ​

This document provides a detailed overview of the AWS public access infrastructure.

Architecture Diagram ​

Purpose of the Infrastructure ​

The goal of this infrastructure is to:

  • Deliver public image assets quickly to users around the globe.
  • Securely manage and serve video content requiring controlled access.
  • Provide a scalable and reliable API for application functionality.

Components and Workflow ​

1. CloudFront (CF) ​

CloudFront serves as the entry point for all traffic and provides the following functionalities:

  • Image Distribution: Serves public image assets stored in the S3 bucket.
  • Video Distribution: Secures access to video content by requiring signed URLs.
  • API Traffic Management: Routes API requests to the Application Load Balancer (ALB).

2. S3 Bucket - Images ​

  • Purpose: Stores publicly accessible image assets, such as thumbnails, banners, or logos.
  • Access: Content is publicly available and distributed via CloudFront for enhanced performance and caching.

3. S3 Bucket - Videos ​

  • Purpose: Stores video content, including episodes or VOD.
  • Access Control: Requires signed URLs to ensure only authorized users can access the content.
  • Integration: Works seamlessly with CloudFront to deliver secured video streams to end users.

4. Application Load Balancer (ALB) ​

  • Purpose: Balances incoming API traffic across multiple ECS tasks (containers).
  • Features: Ensures high availability, scalability, and reliability of the API backend.

5. Elastic Container Service (ECS) ​

  • Purpose: Hosts the backend API services using Docker containers.
  • Scalability: Dynamically adjusts based on traffic and workload demands.
  • Integration: ECS tasks are registered with the ALB, ensuring seamless load balancing.