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.