Amazon CloudFront
Developer Guide (API Version 2010-11-01)
Print this pageEmail this pageGo to the ForumsView the PDFShare this page on TwitterShare this page on FacebookBookmark this page on DeliciousSubmit this page to RedditSubmit this page to DiggDid this page help you?  Yes  No   Tell us about it...

CloudFront Concepts

This section discusses the basic concepts that you need to understand before using CloudFront.

Objects

Objects are the files you want CloudFront to deliver. This typically includes web pages, images, and digital media files, but can be anything that can be served over HTTP or a version of RTMP.

Origin Server

An origin server is the location where you store the original, definitive version of your objects. For CloudFront, your origin server is either an Amazon S3 bucket that you own, or a custom origin. For more information about origin servers, see The Origin Server.

Distributions

After you store your objects in your origin server, how do you get CloudFront to recognize them? You create a distribution, which is a link between your origin server and a domain name that CloudFront automatically assigns. If your origin is an Amazon S3 bucket, you use this new domain name in place of standard Amazon S3 references. For example, http://mybucket.s3.amazonaws.com/image.jpg would instead be http://somedomainname.cloudfront.net/image.jpg.

Distributions can incorporate CNAME aliases you want to use. For more information, see Using CNAMEs.

A streaming distribution is like a distribution except that a streaming distribution delivers digital media over a Real-Time Messaging Protocol (RTMP) connection (instead of HTTP). Adobe's Flash Media Server can serve RTMP and the streaming distribution can be used as it downloads. The objects stored in Amazon S3 are different according to the distribution type.

Edge Locations

An edge location is a geographical site where CloudFront caches copies of your objects. When an end user requests one of your objects, CloudFront decides which edge location is best able to serve the request. If the edge location doesn't have a copy, CloudFront goes to the origin server and puts a copy of the object in the edge location.

For the locations of CloudFront edge locations, go to the CloudFront Details page.

Expiration

By default, an object expires after being in an edge location for 24 hours. After the object expires, CloudFront no longer serves that particular object and must get a new copy of that object from the origin server to serve to end users. The minimum expiration time is 1 hour; there isn't a maximum expiration time limit. For more information about expiration, see Object Expiration.

Eventual Consistency

When you successfully create, modify, or delete a distribution using the CloudFront control API, it takes time for your changes to propagate throughout the CloudFront system. This information about the distribution is eventually consistent, but an immediate request to the control API to get that distribution's information might not show the change. Consistency is usually reached within minutes, but a high system load or network partition might increase this time. The control API lets you determine when your changes have been fully deployed.