{"id":10915,"date":"2022-06-07T18:58:00","date_gmt":"2022-06-07T13:28:00","guid":{"rendered":"https:\/\/opstree.com\/blog\/\/?p=10915"},"modified":"2022-06-14T18:26:42","modified_gmt":"2022-06-14T12:56:42","slug":"amazon-cloudfront","status":"publish","type":"post","link":"https:\/\/opstree.com\/blog\/2022\/06\/07\/amazon-cloudfront\/","title":{"rendered":"Learn everything about Amazon Cloudfront"},"content":{"rendered":"\n<p class=\"has-text-align-justify\">Before going to Cloudfront functionality, we need to understand the CDN (Content delivery network) first, as Cloudfront is nothing but just a FAAS&nbsp; (functions as a service) platform provided by AWS, which we generally relate to the content delivery network(Cloudfront) in AWS cloud service provider.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>CDN(Content Delivery Network)<\/strong><\/h2>\n\n\n\n<p class=\"has-text-align-justify\">A CDN is kind of a geographically distributed group of servers that are attached so that they can communicate with each other and provide fast delivery of any content such as HTML pages, images, videos, etc. The popularity of CDN services is continuously growing among organizations such as Netflix, Facebook, and Amazon as their major web traffic is served through CDN.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Now, let&#8217;s take a deep understanding of how CDN works in the AWS Cloudfront service.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">We could think of a CDN as an ATM. Having a cash machine on practically every corner makes it fast, immediate access, and efficient to get money. There\u2019s no wait time in long bank lines to get our money in hand.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/F_4uFp21O6X7T1z45FZn0-YrVUIjPddyt8owEQ84a8RdjcuHq-XoNQkN6wkSNmvTK6MOAOTDZJUCFQrhhPwddTGyFfc0TU59x2bEJYUFjAJqhHKVitDV_DChgymtqZZwGJHQCTcjZ5zW2Pp5bw\" alt=\"\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">In today&#8217;s time, a large portion of all internet content is delivered through CDNs. Here is a simple example:<\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"has-text-align-justify\">If we were in New York and wanted to view the website of our favorite store in London that\u2019s hosted on a server in the UK, we would have experienced slow content load times because the request had to travel all the way across the Atlantic Ocean. To resolve this, a CDN would store a cached version of the London website content in multiple geographical locations around the world, also called \u201c<strong>points of presence<\/strong>\u201d (PoPs). These PoPs contain their own caching servers and are responsible for delivering that content close to where we\u2019re located in New York.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Content delivered from a server closest to your physical location gives you a faster, high-performance web experience.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/PwXnyr1Ep-4B8BMkLm5qSLkdtH5JoT4HPlKMvXxuh3VYYEJzvTzjWImYp6da_ygrhSgMAmwhatDrrGKea52dttRxlpB3Vl17ygRaF3ZRihisHDlYZBSUHF4R3-wcQLqppfdvkj7kniunl2Ok8A\" alt=\"\" \/><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\"><strong>What is Cloudfront<\/strong>?<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">Amazon Cloudfront is a web service that gives business and web application developers an easy and cost-effective way to distribute content with low latency and high data transfer speed.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>What does latency mean?<\/strong><\/h3>\n\n\n\n<p class=\"has-text-align-justify\">What does latency mean let&#8217;s understand with this given picture? &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img loading=\"lazy\" decoding=\"async\" width=\"620\" height=\"362\" src=\"https:\/\/lh5.googleusercontent.com\/hMOzTA72-3wUtYhfrIPbMPLicyhPKLXkjMe84hh965xWpBktr0Cg9E6QIxYXhMKWAzozqF4KcWXIJfOyW-xSvnG3gmnkEdi_6yMXfQxnxAW19MGNwxxctlWIKtaWCcSIL8_33dWHB-eH3icXLg\"><\/p>\n\n\n\n<p class=\"has-text-align-justify\">For <strong>User1<\/strong> the total travel period is 4s and in the other scenario, for <strong>User2<\/strong> the travel time is 2s so generally what we choose, we always go for the low latency(2s) time. In our day-to-day routines, we use the services on the internet like Wikipedia, youtube, or websites where we can search for images, videos, etc. backed up by  CDN.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">To deliver content to end users with lower latency, Amazon CloudFront uses a global network of 310+ Points of Presence (300+ Edge locations and 13 regional mid-tier caches) in 90+ cities across 47 countries<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Technically Amazon CloudFront works in the following manner :<\/h6>\n\n\n\n<p>a) A user accesses the application or website and requests one or more objects such as an image or an HTML file.<\/p>\n\n\n\n<p>b) DNS then routes the request to CloudFront&#8217;s Edge location which is nearest to the location from where the request is made. Nearest distance is measured in terms of latency as we already discussed what latency means.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/AUpkj2TsMPhq7PnsuIqzo-MqpX_VmD4BsEB4lzvjtlokZrNYA_58wVsAIxMXh5oEs9vuep6gJi7zlqLFbBnEGHdzyllixtxbwMS_tuA1UbRqMKquaZfSIk2yDtJEwRAGcOIElFt_fuGoDPZyow\" alt=\"\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/MIm-SOqijtELe4BAY5TMjVfDzCyEJB3TlZs_JILpNXoeRGMuNMnsc1iu7SvT_ZdeYV_pFPZYFGnKVSxAE6o-Lx5xOqh7pLb-VRHCAFWcHKXNXMl403TyxR8ovqEeqYKcF5uDo9-MaHhtx_hqnw\" alt=\"\" width=\"800\" \/><\/figure>\n\n\n\n<p>c) In the edge location, CloudFront checks its cache for the requested files. If the files are available in the cache, CloudFront returns them to the user. If the files are not available in the cache, it does the following:<\/p>\n\n\n\n<ul><li>CloudFront compares the request with the specifications in your distribution and forwards the request for the files to the applicable origin server for the corresponding file type\u2014for example, to the Amazon S3 bucket for image files and to your HTTP server for the HTML files.<\/li><li>The origin servers send the files back to the CloudFront edge location.<\/li><li>CloudFront also adds the files to the cache in the edge location for the next time someone requests those files.<\/li><li>As soon as the first byte arrives from the origin, CloudFront begins to forward the files to the user.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/cy97h-Bhoy7Q9sbRUhyabgXMs0exhhI2Wv9Nsbuy5gd7z6r3fRe1R8weU-DhBdfvf6T_M47Qti8CRuBvlvEcl7zfR59TwTNutuCKFB5XZbTFq_ZMpp0Fvqs7-mXBkViIcyLtG558LdqXlpITKg\" alt=\"\" \/><\/figure>\n\n\n\n<h6 class=\"wp-block-heading\">Major components of AWS Cloudfront :<\/h6>\n\n\n\n<p class=\"has-text-align-justify\"><strong>Distributions:-<\/strong>CloudFront distribution to tell CloudFront where you want the content to be delivered from, and the details about how to track and manage content delivery<\/p>\n\n\n\n<p class=\"has-text-align-justify\"><strong>Origins:- <\/strong>An origin is the location where content is stored, and from which CloudFront gets content to serve to viewers, at least one origin should be created. We can use several different kinds of origins with CloudFront. For example, we can use an Amazon S3 bucket, a MediaStore container, an Application Load Balancer, or an AWS Lambda function URL.<\/p>\n\n\n\n<p class=\"has-text-align-justify\"><strong>WAF(Web Application Firewall):- <\/strong>AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Benefits of CloudFront<\/h3>\n\n\n\n<ul><li>CloudFront runs on the AWS&nbsp;global network backbone that allows for efficient transmission of requests between the CloudFront Edge locations and other AWS&nbsp;services, across regions and applications.<\/li><li>Cache retention in CloudFront has emerged as a key contributor to performance.&nbsp;<\/li><li>AWS&nbsp;edge provides a scalable, reliable, and high-performance security perimeter for your applications and content.&nbsp;<\/li><li>Amazon CloudFront, content, APIs, or applications can be delivered over HTTPS using the latest version of <strong>Transport Layer Security<\/strong> (TLSv1.3) to encrypt and secure communication between viewer clients and CloudFront.<\/li><li>It supports multiple origins for backend architecture redundancy.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"452d\">Conclusion:<\/h3>\n\n\n\n<p class=\"has-text-align-justify\" id=\"b224\">AWS CloudFront is a globally distributed network offered by AWS which securely delivers content to the end-users with a high transfer speed and low latency. We saw how AWS CloudFront delivers the content. It has various benefits and uses like serving on-demand live streaming videos, encrypting specific fields throughout system processing, and accelerating static website content delivery. But we won&#8217;t end here, shortly we would be covering the real-time implementation of Cloudfront and more features in our coming blog series.<\/p>\n\n\n\n<p><br><strong style=\"font-weight:bold;\">Blog Pundit:<\/strong> <a href=\"https:\/\/opstree.com\/blog\/\/author\/deepakgupta97\/\"><strong>Deepak Gupta<\/strong><\/a> and <a rel=\"noreferrer noopener\" href=\"https:\/\/opstree.com\/blog\/\/author\/sandeep7c51ad81ba\/\" target=\"_blank\"><strong>Sandeep Rawat<\/strong><\/a><\/p>\n\n\n\n<p><strong><a href=\"https:\/\/www.opstree.com\/contact-us?utm_source=wordpress&amp;utm_campaign=Learn-everything-about-Amazon-Cloudfront&amp;utm_id=Blog\">Opstree<\/a><\/strong><a rel=\"noreferrer noopener\" href=\"https:\/\/www.opstree.com\/contact-us?utm_source=blog&amp;utm_medium=wordpress+&amp;utm_campaign=AWS-Elastic-Network-Interface\" target=\"_blank\"> <\/a>is an End to End DevOps solution provider<\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button is-style-fill\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.opstree.com\/contact-us\" target=\"_blank\" rel=\"noreferrer noopener\">CONTACT US<\/a><\/div>\n<\/div>\n\n\n\n<p class=\"has-text-align-center\"><strong>Connect Us <\/strong><\/p>\n\n\n\n<ul class=\"wp-block-social-links aligncenter is-content-justification-right is-layout-flex wp-container-core-social-links-is-layout-1 wp-block-social-links-is-layout-flex\"><li class=\"wp-social-link wp-social-link-linkedin  wp-block-social-link\"><a href=\"https:\/\/www.linkedin.com\/company\/opstree-solutions\" class=\"wp-block-social-link-anchor\" target=\"_blank\" rel=\"noopener\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">LinkedIn<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-youtube  wp-block-social-link\"><a href=\"https:\/\/www.youtube.com\/channel\/UCeLma6SpNYH7jjYKSBNSexw\" class=\"wp-block-social-link-anchor\" target=\"_blank\" rel=\"noopener\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">YouTube<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-github  wp-block-social-link\"><a href=\"https:\/\/github.com\/OpsTree\" class=\"wp-block-social-link-anchor\" target=\"_blank\" rel=\"noopener\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12,2C6.477,2,2,6.477,2,12c0,4.419,2.865,8.166,6.839,9.489c0.5,0.09,0.682-0.218,0.682-0.484 c0-0.236-0.009-0.866-0.014-1.699c-2.782,0.602-3.369-1.34-3.369-1.34c-0.455-1.157-1.11-1.465-1.11-1.465 c-0.909-0.62,0.069-0.608,0.069-0.608c1.004,0.071,1.532,1.03,1.532,1.03c0.891,1.529,2.341,1.089,2.91,0.833 c0.091-0.647,0.349-1.086,0.635-1.337c-2.22-0.251-4.555-1.111-4.555-4.943c0-1.091,0.39-1.984,1.03-2.682 C6.546,8.54,6.202,7.524,6.746,6.148c0,0,0.84-0.269,2.75,1.025C10.295,6.95,11.15,6.84,12,6.836 c0.85,0.004,1.705,0.114,2.504,0.336c1.909-1.294,2.748-1.025,2.748-1.025c0.546,1.376,0.202,2.394,0.1,2.646 c0.64,0.699,1.026,1.591,1.026,2.682c0,3.841-2.337,4.687-4.565,4.935c0.359,0.307,0.679,0.917,0.679,1.852 c0,1.335-0.012,2.415-0.012,2.741c0,0.269,0.18,0.579,0.688,0.481C19.138,20.161,22,16.416,22,12C22,6.477,17.523,2,12,2z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">GitHub<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-facebook  wp-block-social-link\"><a href=\"https:\/\/www.facebook.com\/opstree\" class=\"wp-block-social-link-anchor\" target=\"_blank\" rel=\"noopener\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Facebook<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-medium  wp-block-social-link\"><a href=\"https:\/\/medium.com\/buildpiper\" class=\"wp-block-social-link-anchor\" target=\"_blank\" rel=\"noopener\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M20.962,7.257l-5.457,8.867l-3.923-6.375l3.126-5.08c0.112-0.182,0.319-0.286,0.527-0.286c0.05,0,0.1,0.008,0.149,0.02 c0.039,0.01,0.078,0.023,0.114,0.041l5.43,2.715l0.006,0.003c0.004,0.002,0.007,0.006,0.011,0.008 C20.971,7.191,20.98,7.227,20.962,7.257z M9.86,8.592v5.783l5.14,2.57L9.86,8.592z M15.772,17.331l4.231,2.115 C20.554,19.721,21,19.529,21,19.016V8.835L15.772,17.331z M8.968,7.178L3.665,4.527C3.569,4.479,3.478,4.456,3.395,4.456 C3.163,4.456,3,4.636,3,4.938v11.45c0,0.306,0.224,0.669,0.498,0.806l4.671,2.335c0.12,0.06,0.234,0.088,0.337,0.088 c0.29,0,0.494-0.225,0.494-0.602V7.231C9,7.208,8.988,7.188,8.968,7.178z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Medium<\/span><\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Before going to Cloudfront functionality, we need to understand the CDN (Content delivery network) first, as Cloudfront is nothing but just a FAAS&nbsp; (functions as a service) platform provided by AWS, which we generally relate to the content delivery network(Cloudfront) in AWS cloud service provider. CDN(Content Delivery Network) A CDN is kind of a geographically &hellip; <a href=\"https:\/\/opstree.com\/blog\/2022\/06\/07\/amazon-cloudfront\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Learn everything about Amazon Cloudfront&#8221;<\/span><\/a><\/p>\n","protected":false},"author":221724358,"featured_media":29900,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[28070474],"tags":[6602,9141549,13621027,460,13617066,4996032],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2025\/11\/DevSecOps-1.jpg","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pfDBOm-2Q3","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/10915"}],"collection":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/users\/221724358"}],"replies":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/comments?post=10915"}],"version-history":[{"count":21,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/10915\/revisions"}],"predecessor-version":[{"id":10961,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/10915\/revisions\/10961"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media\/29900"}],"wp:attachment":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media?parent=10915"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/categories?post=10915"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/tags?post=10915"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}