Infrastructure Design
The project's foundation is a robust, scalable, and cost‑effective infrastructure built on core AWS services. This section details the high‑level architecture, the flow of data from the user to the origin, and the design choices that ensure security and performance.
High‑Level Architecture
The architecture follows a modern serverless static hosting model. This design minimizes operational overhead and attack surface while maximizing performance and scalability through a global content delivery network.
Core Components
Amazon S3 (Simple Storage Service)
Serves as the origin server. A single S3 bucket stores all static assets, including HTML, CSS, JavaScript, and images. It is configured for static website hosting but is not publicly accessible, ensuring all traffic is routed through the CDN.
Amazon CloudFront
Acts as the Content Delivery Network. CloudFront caches content at edge locations around the world, reducing latency for users. It also provides a critical security layer by handling TLS termination and restricting direct access to the S3 bucket via an Origin Access Identity.
Amazon Route 53
Provides highly available and scalable Domain Name System services. It maps the custom domain name (for example masonlivermore.com
) to the CloudFront distribution using an Alias record, which is more efficient than traditional CNAME records.
Availability & Durability
Leveraging managed AWS services provides the same reliability standards used by the largest companies in the world.
High Durability
AWS S3 is designed for 11 nines of durability by storing data redundantly across multiple facilities, protecting assets from loss.
High Availability
CloudFront's global network of edge locations ensures that if one location is unavailable, traffic is automatically rerouted to the next nearest location, providing a seamless user experience.