Skip to main content

Command Palette

Search for a command to run...

SAA - C03 Certification: CloudFront

Updated
2 min read
T

I am a dedicated software engineer with a deep passion for security and a commitment to developing robust and scalable solutions. With over three years of hands-on experience in the .NET ecosystem, I have built, maintained, and optimized various software applications, demonstrating my ability to adapt to diverse project needs. In addition to my expertise in .NET, I have six months of specialized experience working with Spring Boot and ReactJS, further broadening my skill set to include full-stack development and modern web technologies. My professional journey includes deploying small to medium-sized systems to cloud platforms and on-premises environments, where I have ensured reliability, scalability, and efficient resource utilization. This combination of skills and experience reflects my versatility and commitment to staying at the forefront of the ever-evolving tech landscape.

Origins

S3 bucket

  • CloudFront can be used as an ingress (to upload files to S3)

Custom Origin (HTTP)

  • Application Load Balancer

  • EC2 Instance

  • S3 website (must first enable the bucket as a static s3 website)

  • Any HTTP backend you want

The difference between CloudFront and S3 Cross Region Replication

CloudFrontS3 Cross Region Replication
Global network edgeMust be set for each region you wish replication to happen
Files are cached for a TTLFiles are updated in near real-time
Read Only
Great for static content that must be available everywhereGreat for dynamic content that needs to be available at low latency in a few regions

Price Classes

You can reduce the number of edge locations for cost reduction

Three price classes:

  • Price Class All: all regions - best performance

  • Price Class 200: most regions

  • Price Class 100: only the least expensive region

Cache Invalidations

If you update the back-end origins, CloudFront does not know about it and will only get the refreshed content after the expired TTL

However, you can force an entire or partial cache refresh by performing a CloudFront Invalidation

You can invalidate all files (*) or a special path (/images/*)

AWS Global Accelerator

Leverage the AWS internal network to route your application

2 Anycast IPs are created for your application

The Anycast IP sends traffic directly to Edge Locations

The Edge locations send the traffic to your application

Works with Elastic IP, EC2, ALB, NLB, public or private

Unicast vs Anycast IP

Unicast IP: one server holds one IP address

Anycast IP: all servers hold the same IP address and the client is routed to the nearest one

7 views

More from this blog

Tuan Do's Blog

37 posts

The blog acts like a personal notebook for jotting down thoughts