<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Anupa Supul</title>
    <description>The latest articles on DEV Community by Anupa Supul (@anupa_supul).</description>
    <link>https://dev.to/anupa_supul</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4019275%2F0a668de2-77e3-4beb-91c3-91f0f8ca4b63.jpeg</url>
      <title>DEV Community: Anupa Supul</title>
      <link>https://dev.to/anupa_supul</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/anupa_supul"/>
    <language>en</language>
    <item>
      <title>Why Doesn't My Website Crash When Thousands of People Visit? Understanding Amazon EC2</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Fri, 31 Jul 2026 10:16:11 +0000</pubDate>
      <link>https://dev.to/anupa_supul/why-doesnt-my-website-crash-when-thousands-of-people-visit-understanding-amazon-ec2-3o7c</link>
      <guid>https://dev.to/anupa_supul/why-doesnt-my-website-crash-when-thousands-of-people-visit-understanding-amazon-ec2-3o7c</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftmaztz6gozt9stwo0l4j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftmaztz6gozt9stwo0l4j.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When I first started learning AWS, I assumed that if a website became popular, the solution was simple.&lt;/p&gt;

&lt;p&gt;Buy a bigger server.&lt;/p&gt;

&lt;p&gt;More CPU.&lt;/p&gt;

&lt;p&gt;More RAM.&lt;/p&gt;

&lt;p&gt;More storage.&lt;/p&gt;

&lt;p&gt;Problem solved.&lt;/p&gt;

&lt;p&gt;But then I started thinking about websites like Netflix, Amazon, and Instagram.&lt;/p&gt;

&lt;p&gt;Millions of people visit them every day.&lt;/p&gt;

&lt;p&gt;Sometimes millions of users are online at exactly the same time.&lt;/p&gt;

&lt;p&gt;Surely they don't keep buying one giant server every time traffic increases.&lt;/p&gt;

&lt;p&gt;So how do they handle sudden spikes in visitors without crashing?&lt;/p&gt;

&lt;p&gt;That question introduced me to &lt;strong&gt;Amazon EC2 Auto Scaling&lt;/strong&gt;.&lt;/p&gt;




&lt;h1&gt;
  
  
  The Problem
&lt;/h1&gt;

&lt;p&gt;Imagine I build my own portfolio website.&lt;/p&gt;

&lt;p&gt;Normally, around 100 people visit it each day.&lt;/p&gt;

&lt;p&gt;Everything works perfectly.&lt;/p&gt;

&lt;p&gt;Then one day, someone with a huge social media following shares my website.&lt;/p&gt;

&lt;p&gt;Within minutes...&lt;/p&gt;

&lt;p&gt;10,000 people try to open it.&lt;/p&gt;

&lt;p&gt;What happens?&lt;/p&gt;

&lt;p&gt;If I only have &lt;strong&gt;one EC2 instance&lt;/strong&gt;, that single server now has to handle every request.&lt;/p&gt;

&lt;p&gt;Soon it becomes overloaded.&lt;/p&gt;

&lt;p&gt;Pages load slowly.&lt;/p&gt;

&lt;p&gt;Some users get errors.&lt;/p&gt;

&lt;p&gt;Eventually...&lt;/p&gt;

&lt;p&gt;The website crashes.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

Users --&amp;gt; EC2

style EC2 fill:#ff9999
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Clearly, one server isn't enough.&lt;/p&gt;




&lt;h1&gt;
  
  
  My First Thought
&lt;/h1&gt;

&lt;p&gt;My first solution was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Just buy a bigger server.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;Upgrade from&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;2 GB RAM&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;to&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;16 GB RAM&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is called &lt;strong&gt;Vertical Scaling&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

SmallEC2["Small EC2"]

--&amp;gt;LargeEC2["Bigger EC2"]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This works...&lt;/p&gt;

&lt;p&gt;But only up to a point.&lt;/p&gt;

&lt;p&gt;Eventually, even the biggest server has limits.&lt;/p&gt;




&lt;h1&gt;
  
  
  AWS Had a Better Idea
&lt;/h1&gt;

&lt;p&gt;Instead of buying one huge server...&lt;/p&gt;

&lt;p&gt;Why not create &lt;strong&gt;more servers&lt;/strong&gt; whenever they're needed?&lt;/p&gt;

&lt;p&gt;That's exactly what Auto Scaling does.&lt;/p&gt;

&lt;p&gt;Instead of this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

Users --&amp;gt; OneServer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;AWS can do this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

Users

--&amp;gt;ELB

ELB--&amp;gt;EC21

ELB--&amp;gt;EC22

ELB--&amp;gt;EC23

ELB--&amp;gt;EC24
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now the workload is shared across multiple EC2 instances.&lt;/p&gt;

&lt;p&gt;Each server handles only part of the traffic.&lt;/p&gt;




&lt;h1&gt;
  
  
  What Is Amazon EC2 Auto Scaling?
&lt;/h1&gt;

&lt;p&gt;Amazon EC2 Auto Scaling automatically launches or removes EC2 instances depending on your application's traffic.&lt;/p&gt;

&lt;p&gt;Simply put:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;More visitors ➜ More servers&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fewer visitors ➜ Fewer servers&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No manual work required.&lt;/p&gt;




&lt;h1&gt;
  
  
  Scale Out
&lt;/h1&gt;

&lt;p&gt;Suppose your website suddenly becomes popular.&lt;/p&gt;

&lt;p&gt;Traffic increases.&lt;/p&gt;

&lt;p&gt;Auto Scaling detects the increase.&lt;/p&gt;

&lt;p&gt;It automatically launches additional EC2 instances.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

Traffic

--&amp;gt;AutoScaling

AutoScaling

--&amp;gt;EC21

AutoScaling

--&amp;gt;EC22

AutoScaling

--&amp;gt;EC23

AutoScaling

--&amp;gt;EC24
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This process is called &lt;strong&gt;Scale Out&lt;/strong&gt;.&lt;/p&gt;




&lt;h1&gt;
  
  
  Scale In
&lt;/h1&gt;

&lt;p&gt;Now imagine it's midnight.&lt;/p&gt;

&lt;p&gt;Most users leave.&lt;/p&gt;

&lt;p&gt;You no longer need four servers.&lt;/p&gt;

&lt;p&gt;Keeping them running would waste money.&lt;/p&gt;

&lt;p&gt;Auto Scaling automatically terminates the extra EC2 instances.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

TrafficDrops

--&amp;gt;AutoScaling

AutoScaling

--&amp;gt;EC21
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is called &lt;strong&gt;Scale In&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;You only pay for what you actually use.&lt;/p&gt;




&lt;h1&gt;
  
  
  Auto Scaling Group
&lt;/h1&gt;

&lt;p&gt;Auto Scaling doesn't create random servers.&lt;/p&gt;

&lt;p&gt;Instead, it manages them inside something called an &lt;strong&gt;Auto Scaling Group (ASG).&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;An ASG follows rules that you define.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Minimum Instances → 2&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Desired Instances → 3&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Maximum Instances → 10&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If traffic increases, AWS can grow from:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;3 → 4 → 5 → 6 → ... → 10
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If traffic decreases, it can shrink back down.&lt;/p&gt;

&lt;p&gt;Everything happens automatically.&lt;/p&gt;




&lt;h1&gt;
  
  
  Auto Scaling + Elastic Load Balancer
&lt;/h1&gt;

&lt;p&gt;One thing finally clicked for me.&lt;/p&gt;

&lt;p&gt;Auto Scaling creates servers.&lt;/p&gt;

&lt;p&gt;But...&lt;/p&gt;

&lt;p&gt;How do users know which server to use?&lt;/p&gt;

&lt;p&gt;That's where the &lt;strong&gt;Elastic Load Balancer (ELB)&lt;/strong&gt; comes in.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

Users

--&amp;gt;ELB

ELB--&amp;gt;EC21

ELB--&amp;gt;EC22

ELB--&amp;gt;EC23

ELB--&amp;gt;EC24
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The Load Balancer distributes traffic.&lt;/p&gt;

&lt;p&gt;Auto Scaling creates or removes servers.&lt;/p&gt;

&lt;p&gt;Together, they make applications highly available.&lt;/p&gt;




&lt;h1&gt;
  
  
  Real-World Examples
&lt;/h1&gt;

&lt;p&gt;Auto Scaling is useful almost everywhere.&lt;/p&gt;

&lt;p&gt;Imagine:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Black Friday shopping&lt;/li&gt;
&lt;li&gt; Concert ticket sales&lt;/li&gt;
&lt;li&gt; Online gaming events&lt;/li&gt;
&lt;li&gt; Netflix releasing a new season&lt;/li&gt;
&lt;li&gt; Viral social media applications&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Traffic suddenly increases.&lt;/p&gt;

&lt;p&gt;Instead of crashing...&lt;/p&gt;

&lt;p&gt;AWS automatically adds more servers.&lt;/p&gt;

&lt;p&gt;Once traffic drops, it removes the extra servers.&lt;/p&gt;




&lt;h1&gt;
  
  
  Why This Saves Money
&lt;/h1&gt;

&lt;p&gt;Without Auto Scaling, you might keep ten servers running all day.&lt;/p&gt;

&lt;p&gt;Even when only one server is needed.&lt;/p&gt;

&lt;p&gt;That's expensive.&lt;/p&gt;

&lt;p&gt;With Auto Scaling:&lt;/p&gt;

&lt;p&gt;Busy hours:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;8 Servers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quiet hours:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;2 Servers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;AWS adjusts automatically.&lt;/p&gt;

&lt;p&gt;You only pay for the servers you actually need.&lt;/p&gt;




&lt;h1&gt;
  
  
  Benefits of Auto Scaling
&lt;/h1&gt;

&lt;p&gt;Handles sudden traffic spikes&lt;/p&gt;

&lt;p&gt;Improves application availability&lt;/p&gt;

&lt;p&gt;Prevents server overload&lt;/p&gt;

&lt;p&gt;Automatically adds or removes EC2 instances&lt;/p&gt;

&lt;p&gt;Reduces infrastructure costs&lt;/p&gt;

&lt;p&gt;Works seamlessly with Elastic Load Balancers&lt;/p&gt;




&lt;h1&gt;
  
  
  What Changed My Perspective
&lt;/h1&gt;

&lt;p&gt;Before learning Auto Scaling, I thought handling more users meant buying a more powerful server.&lt;/p&gt;

&lt;p&gt;Now I understand that's only one approach.&lt;/p&gt;

&lt;p&gt;Sometimes the better solution isn't:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A bigger server.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It's:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;More servers working together.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That small mindset shift completely changed how I think about scalable applications.&lt;/p&gt;




&lt;h1&gt;
  
  
  Final Thoughts
&lt;/h1&gt;

&lt;p&gt;When I first heard the term &lt;strong&gt;Amazon EC2 Auto Scaling&lt;/strong&gt;, I imagined it was just another AWS feature.&lt;/p&gt;

&lt;p&gt;Now I realize it's one of the key reasons modern cloud applications stay online during sudden traffic spikes.&lt;/p&gt;

&lt;p&gt;Instead of guessing how many servers you'll need...&lt;/p&gt;

&lt;p&gt;AWS watches your traffic for you.&lt;/p&gt;

&lt;p&gt;When demand increases, it automatically adds more servers.&lt;/p&gt;

&lt;p&gt;When demand decreases, it removes the extras.&lt;/p&gt;

&lt;p&gt;That's one of the biggest advantages of cloud computing.&lt;/p&gt;

&lt;p&gt;You don't have to build for your busiest day.&lt;/p&gt;

&lt;p&gt;AWS scales with you.&lt;/p&gt;




&lt;h2&gt;
  
  
  Key Takeaways
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Auto Scaling automatically launches and removes EC2 instances.&lt;/li&gt;
&lt;li&gt;Scale Out adds more servers during high traffic.&lt;/li&gt;
&lt;li&gt;Scale In removes servers when traffic decreases.&lt;/li&gt;
&lt;li&gt;Auto Scaling Groups manage EC2 instances using rules.&lt;/li&gt;
&lt;li&gt;Elastic Load Balancer distributes traffic across all instances.&lt;/li&gt;
&lt;li&gt;Together, ELB and Auto Scaling build highly available applications.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;*&lt;em&gt;Thanks for reading! *&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>amazon</category>
      <category>cloudcomputing</category>
      <category>ec2</category>
    </item>
    <item>
      <title>How Does AWS Know Which Website I'm Trying to Visit? Understanding Amazon Route 53</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Fri, 31 Jul 2026 09:57:57 +0000</pubDate>
      <link>https://dev.to/anupa_supul/how-does-aws-know-which-website-im-trying-to-visit-understanding-amazon-route-53-2mco</link>
      <guid>https://dev.to/anupa_supul/how-does-aws-know-which-website-im-trying-to-visit-understanding-amazon-route-53-2mco</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fldkutdelstc2amo835hf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fldkutdelstc2amo835hf.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When I first started learning web development, opening a website felt almost magical.&lt;/p&gt;

&lt;p&gt;I would type something like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;www.amazon.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Press &lt;strong&gt;Enter&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A few seconds later, the website appeared.&lt;/p&gt;

&lt;p&gt;I never stopped to think about what actually happened.&lt;/p&gt;

&lt;p&gt;How did my computer know where Amazon's servers were?&lt;/p&gt;

&lt;p&gt;How did it find the correct server among millions connected to the internet?&lt;/p&gt;

&lt;p&gt;And why don't we type an IP address like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;54.239.28.85
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;instead of simply typing:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;amazon.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Those questions eventually led me to one of the first networking services in AWS:&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Amazon Route 53&lt;/strong&gt;
&lt;/h1&gt;




&lt;h1&gt;
  
  
  The Question That Made Me Curious
&lt;/h1&gt;

&lt;p&gt;Imagine I build my own MERN application.&lt;/p&gt;

&lt;p&gt;I deploy it on an EC2 instance.&lt;/p&gt;

&lt;p&gt;AWS gives me a public IP address like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;18.142.120.54
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Technically, people can visit my application using that IP.&lt;/p&gt;

&lt;p&gt;But let's be honest...&lt;/p&gt;

&lt;p&gt;Nobody wants to remember numbers like that.&lt;/p&gt;

&lt;p&gt;It's much easier to visit:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;myportfolio.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;myapp.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That made me wonder:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;How does my computer know that "myapp.com" actually means "18.142.120.54"?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  The Phone Contact Analogy
&lt;/h1&gt;

&lt;p&gt;This example made everything click for me.&lt;/p&gt;

&lt;p&gt;Imagine your best friend has this phone number.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;+94 71 123 4567
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Do you memorize the number?&lt;/p&gt;

&lt;p&gt;Probably not.&lt;/p&gt;

&lt;p&gt;Instead, you save it as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;John
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now whenever you want to call him, you simply tap:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;John
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Your phone automatically finds the correct phone number.&lt;/p&gt;

&lt;p&gt;You don't need to remember it.&lt;/p&gt;

&lt;p&gt;The internet works almost the same way.&lt;/p&gt;

&lt;p&gt;Instead of remembering:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;18.142.120.54
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;we simply remember:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mywebsite.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Something translates that easy-to-read name into the server's IP address.&lt;/p&gt;

&lt;p&gt;That "something" is called &lt;strong&gt;DNS (Domain Name System).&lt;/strong&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  What Is Amazon Route 53?
&lt;/h1&gt;

&lt;p&gt;Amazon Route 53 is AWS's managed &lt;strong&gt;DNS service&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Its job is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Convert human-friendly domain names into IP addresses that computers understand.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead of this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;18.142.120.54
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We simply type:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mywebsite.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Route 53 performs the translation and sends us to the correct server.&lt;/p&gt;




&lt;h1&gt;
  
  
  What Actually Happens?
&lt;/h1&gt;

&lt;p&gt;Let's say I open:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;www.myportfolio.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Here's what happens behind the scenes.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

A[User Types myportfolio.com]

--&amp;gt;B[Browser]

--&amp;gt;C[Amazon Route53 DNS Lookup]

--&amp;gt;D[Returns IP Address]

--&amp;gt;E[EC2 Server]

--&amp;gt;F[Website Loads]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The entire process usually takes only milliseconds.&lt;/p&gt;




&lt;h1&gt;
  
  
  A Real AWS Example
&lt;/h1&gt;

&lt;p&gt;Suppose I host my MERN application on an EC2 instance in Singapore.&lt;/p&gt;

&lt;p&gt;Its public IP address is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;18.xxx.xxx.xxx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Without Route 53, users would have to visit:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;18.xxx.xxx.xxx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;With Route 53:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

A[myportfolio.com]

--&amp;gt;B[Amazon Route53]

--&amp;gt;C[18.xxx.xxx.xxx]

--&amp;gt;D[EC2 Instance]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Much easier.&lt;/p&gt;




&lt;h1&gt;
  
  
  Why Is It Called Route 53?
&lt;/h1&gt;

&lt;p&gt;One thing that caught my attention was the number &lt;strong&gt;53&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;It's actually named after &lt;strong&gt;Port 53&lt;/strong&gt;, the standard network port used for DNS communication.&lt;/p&gt;

&lt;p&gt;A small detail, but one I found interesting.&lt;/p&gt;




&lt;h1&gt;
  
  
  Route 53 Does More Than DNS
&lt;/h1&gt;

&lt;p&gt;Initially, I thought Route 53 only converted domain names into IP addresses.&lt;/p&gt;

&lt;p&gt;But it can also:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Route traffic globally&lt;/li&gt;
&lt;li&gt; Perform Health Checks&lt;/li&gt;
&lt;li&gt; Fail over to healthy resources&lt;/li&gt;
&lt;li&gt; Route traffic intelligently&lt;/li&gt;
&lt;li&gt; Improve application availability&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Where Route 53 Fits in AWS
&lt;/h1&gt;

&lt;p&gt;As I learned more AWS services, I realized Route 53 is usually the very first AWS service involved when someone opens a website.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR

User

--&amp;gt;Route53

--&amp;gt;CloudFront

--&amp;gt;LoadBalancer

--&amp;gt;EC2

--&amp;gt;Database
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Every service has its own responsibility.&lt;/p&gt;

&lt;p&gt;Route 53 simply helps users find the right destination.&lt;/p&gt;




&lt;h1&gt;
  
  
  Why Route 53 Matters
&lt;/h1&gt;

&lt;p&gt;Without DNS:&lt;/p&gt;

&lt;p&gt;Users must remember IP addresses.&lt;/p&gt;

&lt;p&gt;With Route 53:&lt;/p&gt;

&lt;p&gt;Easy-to-remember domain names&lt;/p&gt;

&lt;p&gt;Highly available DNS&lt;/p&gt;

&lt;p&gt;Faster routing&lt;/p&gt;

&lt;p&gt;Health monitoring&lt;/p&gt;

&lt;p&gt;Traffic routing policies&lt;/p&gt;

&lt;p&gt;Works with almost every AWS service&lt;/p&gt;




&lt;h1&gt;
  
  
  What Changed My Perspective
&lt;/h1&gt;

&lt;p&gt;Before learning AWS, I thought typing a website name directly connected me to the server.&lt;/p&gt;

&lt;p&gt;Now I understand there's an important translation happening first.&lt;/p&gt;

&lt;p&gt;Someone has to convert:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mywebsite.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;into&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;18.xxx.xxx.xxx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's exactly what DNS does.&lt;/p&gt;

&lt;p&gt;And in AWS, that job belongs to &lt;strong&gt;Amazon Route 53&lt;/strong&gt;.&lt;/p&gt;




&lt;h1&gt;
  
  
  Final Thoughts
&lt;/h1&gt;

&lt;p&gt;When I first heard the name &lt;strong&gt;Route 53&lt;/strong&gt;, I had no idea what it actually did.&lt;/p&gt;

&lt;p&gt;Now I think of it much more simply.&lt;/p&gt;

&lt;p&gt;It's like the contact list on my phone.&lt;/p&gt;

&lt;p&gt;I don't remember phone numbers.&lt;/p&gt;

&lt;p&gt;I remember names.&lt;/p&gt;

&lt;p&gt;Similarly, my browser doesn't magically know where a website lives.&lt;/p&gt;

&lt;p&gt;Route 53 translates a human-friendly domain name into the server's actual address.&lt;/p&gt;

&lt;p&gt;Sometimes the most important AWS services are the ones quietly working behind the scenes.&lt;/p&gt;

&lt;p&gt;And Route 53 is definitely one of them.&lt;/p&gt;




&lt;h2&gt;
  
  
  Key Takeaways
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Route 53 is AWS's managed DNS service.&lt;/li&gt;
&lt;li&gt;It converts domain names into IP addresses.&lt;/li&gt;
&lt;li&gt;It makes websites easier to access.&lt;/li&gt;
&lt;li&gt;It supports health checks and intelligent routing.&lt;/li&gt;
&lt;li&gt;It's usually the first AWS service involved when visiting a website.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;*&lt;em&gt;Thanks for reading! *&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudcomputing</category>
      <category>amazon</category>
      <category>route</category>
    </item>
    <item>
      <title>Why Is Netflix So Fast Everywhere? Understanding Amazon CloudFront</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Wed, 22 Jul 2026 10:27:13 +0000</pubDate>
      <link>https://dev.to/anupa_supul/why-is-netflix-so-fast-everywhere-understanding-amazon-cloudfront-1bnh</link>
      <guid>https://dev.to/anupa_supul/why-is-netflix-so-fast-everywhere-understanding-amazon-cloudfront-1bnh</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frcr40kvdavbwxh0cgyp3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frcr40kvdavbwxh0cgyp3.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When I first started learning AWS, I thought website speed mostly depended on one thing:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A powerful server.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;More CPU.&lt;/p&gt;

&lt;p&gt;More memory.&lt;/p&gt;

&lt;p&gt;Better hardware.&lt;/p&gt;

&lt;p&gt;Problem solved.&lt;/p&gt;

&lt;p&gt;Or at least that's what I thought.&lt;/p&gt;

&lt;p&gt;Then a question hit me.&lt;/p&gt;

&lt;p&gt;Netflix loads quickly.&lt;/p&gt;

&lt;p&gt;YouTube loads quickly.&lt;/p&gt;

&lt;p&gt;Amazon loads quickly.&lt;/p&gt;

&lt;p&gt;But their servers aren't sitting in my room.&lt;/p&gt;

&lt;p&gt;In fact, many of them are located thousands of kilometers away.&lt;/p&gt;

&lt;p&gt;So why doesn't every click feel slow?&lt;/p&gt;

&lt;p&gt;That question eventually led me to &lt;strong&gt;Amazon CloudFront&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Thought That Started It
&lt;/h2&gt;

&lt;p&gt;Imagine I host a website on AWS in Singapore.&lt;/p&gt;

&lt;p&gt;Now imagine someone opens that website from Sri Lanka.&lt;/p&gt;

&lt;p&gt;Every image.&lt;/p&gt;

&lt;p&gt;Every CSS file.&lt;/p&gt;

&lt;p&gt;Every JavaScript file.&lt;/p&gt;

&lt;p&gt;Every request.&lt;/p&gt;

&lt;p&gt;Has to travel all the way to Singapore and back.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR
    USER[User in Sri Lanka]
    SERVER[AWS Server in Singapore]

    USER --&amp;gt; SERVER
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That doesn't sound very efficient.&lt;/p&gt;

&lt;p&gt;And it gets even worse when thousands or millions of users are involved.&lt;/p&gt;

&lt;p&gt;So I started wondering:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How do global companies deliver content so quickly to people all around the world?&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The Concept That Finally Clicked
&lt;/h2&gt;

&lt;p&gt;The simplest way I understand CloudFront is this:&lt;/p&gt;

&lt;p&gt;Imagine there is only one library in an entire country.&lt;/p&gt;

&lt;p&gt;Every student has to travel there to borrow a book.&lt;/p&gt;

&lt;p&gt;It works.&lt;/p&gt;

&lt;p&gt;But it's slow.&lt;/p&gt;

&lt;p&gt;Now imagine small branches of that library are opened across different cities.&lt;/p&gt;

&lt;p&gt;Students can get popular books from a nearby branch instead of traveling to the main library.&lt;/p&gt;

&lt;p&gt;That's basically what CloudFront does.&lt;/p&gt;

&lt;p&gt;Instead of forcing every user to communicate with the original server, AWS places copies of content closer to users.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Is Amazon CloudFront?
&lt;/h2&gt;

&lt;p&gt;Amazon CloudFront is AWS's Content Delivery Network (CDN).&lt;/p&gt;

&lt;p&gt;Its job is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Deliver content from the location closest to the user whenever possible.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Rather than always requesting files from the original server, CloudFront stores frequently requested content in locations around the world called &lt;strong&gt;Edge Locations&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When a user requests that content again, it can be delivered from a nearby Edge Location instead of the original AWS Region.&lt;/p&gt;




&lt;h2&gt;
  
  
  A Simple Example
&lt;/h2&gt;

&lt;p&gt;Suppose I host a portfolio website.&lt;/p&gt;

&lt;p&gt;The website contains:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Images&lt;/li&gt;
&lt;li&gt;CSS files&lt;/li&gt;
&lt;li&gt;JavaScript files&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Without CloudFront:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR
    USER[User]
    SERVER[Singapore Server]

    USER --&amp;gt; SERVER
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Every request makes the full journey.&lt;/p&gt;




&lt;p&gt;With CloudFront:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR
    USER[User]

    EDGE[CloudFront Edge Location]

    SERVER[Singapore Server]

    USER --&amp;gt; EDGE
    EDGE --&amp;gt; SERVER
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the content is already cached, CloudFront delivers it immediately.&lt;/p&gt;

&lt;p&gt;Fewer long-distance trips.&lt;/p&gt;

&lt;p&gt;Faster loading times.&lt;/p&gt;

&lt;p&gt;Better experience.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Are Edge Locations?
&lt;/h2&gt;

&lt;p&gt;While learning AWS Global Infrastructure, I came across three important concepts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Regions&lt;/li&gt;
&lt;li&gt;Availability Zones&lt;/li&gt;
&lt;li&gt;Edge Locations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;CloudFront uses Edge Locations to serve content closer to users.&lt;/p&gt;

&lt;p&gt;Think of them as small delivery centers spread around the world.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
    USER[User]

    EDGE[Nearest Edge Location]

    ORIGIN[Origin Server]

    USER --&amp;gt; EDGE
    EDGE --&amp;gt; ORIGIN
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When content is already available at the Edge Location, users get it much faster.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;Before learning CloudFront, I thought performance was mainly about the server.&lt;/p&gt;

&lt;p&gt;Now I realize distance is part of the equation too.&lt;/p&gt;

&lt;p&gt;Even a powerful server can't overcome physics.&lt;/p&gt;

&lt;p&gt;Data still needs to travel.&lt;/p&gt;

&lt;p&gt;CloudFront helps reduce that distance from the user's perspective.&lt;/p&gt;

&lt;p&gt;And when you're serving users across different countries, that makes a huge difference.&lt;/p&gt;




&lt;h2&gt;
  
  
  CloudFront + S3
&lt;/h2&gt;

&lt;p&gt;One of the most common AWS architectures combines CloudFront with Amazon S3.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR
    USER[Users]

    CF[CloudFront]

    S3[Amazon S3 Bucket]

    USER --&amp;gt; CF
    CF --&amp;gt; S3
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This setup is commonly used for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Static websites&lt;/li&gt;
&lt;li&gt;Images&lt;/li&gt;
&lt;li&gt;Downloads&lt;/li&gt;
&lt;li&gt;Documentation&lt;/li&gt;
&lt;li&gt;Portfolio sites&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  CloudFront + Modern Web Applications
&lt;/h2&gt;

&lt;p&gt;CloudFront can also work with dynamic applications.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR
    USER[Users]

    CF[CloudFront]

    ELB[Load Balancer]

    EC2[EC2 Instances]

    USER --&amp;gt; CF
    CF --&amp;gt; ELB
    ELB --&amp;gt; EC2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Seeing architectures like this helped me realize that AWS services aren't isolated tools.&lt;/p&gt;

&lt;p&gt;They work together to solve larger problems.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Is Netflix So Fast?
&lt;/h2&gt;

&lt;p&gt;This was the original question that made me curious.&lt;/p&gt;

&lt;p&gt;Streaming platforms serve enormous amounts of content every second.&lt;/p&gt;

&lt;p&gt;Imagine if every user had to fetch videos directly from a single server.&lt;/p&gt;

&lt;p&gt;The experience would be terrible.&lt;/p&gt;

&lt;p&gt;Instead, content is distributed closer to users.&lt;/p&gt;

&lt;p&gt;Popular files are cached.&lt;/p&gt;

&lt;p&gt;Travel distance is reduced.&lt;/p&gt;

&lt;p&gt;Latency drops.&lt;/p&gt;

&lt;p&gt;The result is a much smoother experience.&lt;/p&gt;

&lt;p&gt;While Netflix has a far more complex infrastructure than this simplified example, the underlying idea is very similar:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Bring content closer to users.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Benefits of Amazon CloudFront
&lt;/h2&gt;

&lt;p&gt;After learning about CloudFront, these are the biggest benefits that stood out to me:&lt;/p&gt;

&lt;p&gt;✅ Faster content delivery&lt;/p&gt;

&lt;p&gt;✅ Lower latency&lt;/p&gt;

&lt;p&gt;✅ Better user experience&lt;/p&gt;

&lt;p&gt;✅ Reduced load on origin servers&lt;/p&gt;

&lt;p&gt;✅ Global content distribution&lt;/p&gt;

&lt;p&gt;✅ Improved scalability&lt;/p&gt;




&lt;h2&gt;
  
  
  What Changed My Perspective
&lt;/h2&gt;

&lt;p&gt;Before learning AWS, I thought website performance was mostly about powerful servers.&lt;/p&gt;

&lt;p&gt;Then I learned about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Load Balancers&lt;/li&gt;
&lt;li&gt;Auto Scaling&lt;/li&gt;
&lt;li&gt;CloudFront&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And I realized something.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Sometimes the fastest solution isn't a bigger server.&lt;/p&gt;

&lt;p&gt;It's bringing content closer to the user.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That simple idea is what made CloudFront click for me.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;When I first heard about Amazon CloudFront, it sounded like just another AWS service.&lt;/p&gt;

&lt;p&gt;Now I see it differently.&lt;/p&gt;

&lt;p&gt;It's AWS's answer to a simple problem:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How do you make a website feel fast for users all around the world?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Not by making people travel farther.&lt;/p&gt;

&lt;p&gt;By bringing content closer to them.&lt;/p&gt;

&lt;p&gt;And honestly, that's not something I ever thought about when I first started learning web development.&lt;/p&gt;




&lt;p&gt;ops&lt;/p&gt;

</description>
      <category>cloudcomputing</category>
      <category>aws</category>
      <category>cloudfront</category>
      <category>devops</category>
    </item>
    <item>
      <title>How AWS Security Groups Finally Made Sense to Me</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Wed, 22 Jul 2026 10:11:43 +0000</pubDate>
      <link>https://dev.to/anupa_supul/how-aws-security-groups-finally-made-sense-to-me-5770</link>
      <guid>https://dev.to/anupa_supul/how-aws-security-groups-finally-made-sense-to-me-5770</guid>
      <description>&lt;h1&gt;
  
  
  🔐 How AWS Security Groups Finally Made Sense to Me
&lt;/h1&gt;

&lt;p&gt;&lt;em&gt;The AWS feature that taught me security isn't just about passwords and encryption.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa98qqsrzp17rue7kcjue.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa98qqsrzp17rue7kcjue.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When I launched my first EC2 instance, AWS asked me to configure something called a &lt;strong&gt;Security Group&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;At the time, I didn't think much about it.&lt;/p&gt;

&lt;p&gt;I simply opened the ports AWS recommended, launched the server, and moved on.&lt;/p&gt;

&lt;p&gt;The application worked.&lt;/p&gt;

&lt;p&gt;The website loaded.&lt;/p&gt;

&lt;p&gt;Everything seemed fine.&lt;/p&gt;

&lt;p&gt;But as I continued learning AWS, I kept seeing Security Groups appear everywhere.&lt;/p&gt;

&lt;p&gt;EC2 instances had them.&lt;/p&gt;

&lt;p&gt;Databases had them.&lt;/p&gt;

&lt;p&gt;Load Balancers used them.&lt;/p&gt;

&lt;p&gt;That's when I started wondering:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;What exactly are Security Groups, and why are they so important?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The Mistake Most Beginners Make
&lt;/h2&gt;

&lt;p&gt;When I first heard the word &lt;em&gt;security&lt;/em&gt;, I immediately thought about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Passwords&lt;/li&gt;
&lt;li&gt;Encryption&lt;/li&gt;
&lt;li&gt;Authentication&lt;/li&gt;
&lt;li&gt;Antivirus software&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Security Groups are different.&lt;/p&gt;

&lt;p&gt;They answer a much simpler question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Who is allowed to communicate with my AWS resources?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And surprisingly, that single question is incredibly important.&lt;/p&gt;




&lt;h2&gt;
  
  
  A Real Scenario: Hosting a Website
&lt;/h2&gt;

&lt;p&gt;Imagine I deploy a MERN application on an EC2 instance.&lt;/p&gt;

&lt;p&gt;Users need to access the website through their browsers.&lt;/p&gt;

&lt;p&gt;For that to happen, the server must allow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTTP (Port 80)&lt;/li&gt;
&lt;li&gt;HTTPS (Port 443)
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
    U[User]
    SG[Security Group]
    EC2[EC2 Instance]

    U --&amp;gt; SG
    SG --&amp;gt; EC2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Without those ports being open, nobody can access the application.&lt;/p&gt;

&lt;p&gt;Even if the server is running perfectly, it remains unreachable.&lt;/p&gt;

&lt;p&gt;This was my first realization:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Security Groups don't make resources public.&lt;/p&gt;

&lt;p&gt;They decide whether traffic is allowed to reach them.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  So What Is a Security Group?
&lt;/h2&gt;

&lt;p&gt;The simplest explanation I found is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;A Security Group acts as a virtual firewall for AWS resources.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It controls two types of traffic:&lt;/p&gt;

&lt;h3&gt;
  
  
  Inbound Rules
&lt;/h3&gt;

&lt;p&gt;Traffic coming into a resource.&lt;/p&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Users visiting a website&lt;/li&gt;
&lt;li&gt;Developers connecting through SSH&lt;/li&gt;
&lt;li&gt;Applications calling APIs&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Outbound Rules
&lt;/h3&gt;

&lt;p&gt;Traffic leaving a resource.&lt;/p&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Calling external APIs&lt;/li&gt;
&lt;li&gt;Downloading updates&lt;/li&gt;
&lt;li&gt;Connecting to databases&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every request is checked against these rules.&lt;/p&gt;

&lt;p&gt;If a rule allows it, traffic passes.&lt;/p&gt;

&lt;p&gt;If not, AWS blocks it automatically.&lt;/p&gt;




&lt;h2&gt;
  
  
  The SSH Example
&lt;/h2&gt;

&lt;p&gt;This is where Security Groups became very practical for me.&lt;/p&gt;

&lt;p&gt;Suppose I want to connect to my EC2 instance using SSH.&lt;/p&gt;

&lt;p&gt;SSH uses:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Port 22&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
    DEV[Developer]
    SSH[SSH Port 22]
    SG[Security Group]
    EC2[EC2 Instance]

    DEV --&amp;gt; SSH
    SSH --&amp;gt; SG
    SG --&amp;gt; EC2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A common beginner mistake is allowing:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;0.0.0.0/0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Which means:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Anyone on the internet can attempt to connect.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It works.&lt;/p&gt;

&lt;p&gt;But it's not ideal.&lt;/p&gt;

&lt;p&gt;A safer approach is allowing only your own public IP address.&lt;/p&gt;

&lt;p&gt;That way, only you can access the server.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Database Scenario That Made Everything Click
&lt;/h2&gt;

&lt;p&gt;This was the example that finally made Security Groups click for me.&lt;/p&gt;

&lt;p&gt;Imagine a simple application architecture:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
    USER[Users]

    FE[Frontend]

    API[Backend API]

    DB[(Database)]

    USER --&amp;gt; FE
    FE --&amp;gt; API
    API --&amp;gt; DB
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now ask yourself:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Should internet users connect directly to the database?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Definitely not.&lt;/p&gt;

&lt;p&gt;The database should only accept requests from the backend server.&lt;/p&gt;

&lt;p&gt;Instead of this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
    INTERNET[Internet Users]
    DB[(Database)]

    INTERNET -. Blocked ❌ .-&amp;gt; DB
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We want this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
    FE[Frontend]
    API[Backend API]
    DB[(Database)]

    FE --&amp;gt; API
    API --&amp;gt; DB
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Security Groups make this possible by controlling exactly who can communicate with what.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Security Groups Are Stateful
&lt;/h2&gt;

&lt;p&gt;One AWS concept that surprised me was that Security Groups are &lt;strong&gt;stateful&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Imagine a user sends a request to an EC2 instance.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart LR
    USER[User]

    SG[Security Group]

    EC2[EC2 Instance]

    USER --&amp;gt; SG
    SG --&amp;gt; EC2

    EC2 --&amp;gt; USER
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the inbound request is allowed, the response is automatically allowed back.&lt;/p&gt;

&lt;p&gt;You don't need to create a separate return rule.&lt;/p&gt;

&lt;p&gt;AWS handles that automatically.&lt;/p&gt;

&lt;p&gt;This makes Security Groups much easier to manage.&lt;/p&gt;




&lt;h2&gt;
  
  
  A Real-World AWS Architecture
&lt;/h2&gt;

&lt;p&gt;A simple production setup might look like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
    USER[Users]

    SG1[Web Security Group]

    EC2[Backend Server]

    SG2[Database Security Group]

    DB[(Database)]

    USER --&amp;gt; SG1
    SG1 --&amp;gt; EC2

    EC2 --&amp;gt; SG2
    SG2 --&amp;gt; DB
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this setup:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Users can access the backend server.&lt;/li&gt;
&lt;li&gt;The backend server can access the database.&lt;/li&gt;
&lt;li&gt;Users cannot access the database directly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is one of the most common security patterns you'll see in AWS architectures.&lt;/p&gt;




&lt;h2&gt;
  
  
  Security Is Not Just About Applications
&lt;/h2&gt;

&lt;p&gt;Before learning AWS, I thought security mostly happened inside the application.&lt;/p&gt;

&lt;p&gt;Things like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;User authentication&lt;/li&gt;
&lt;li&gt;Password hashing&lt;/li&gt;
&lt;li&gt;JWT tokens&lt;/li&gt;
&lt;li&gt;Role-based access control&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Those are still important.&lt;/p&gt;

&lt;p&gt;But AWS taught me something else:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Security also exists at the infrastructure level.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Even a perfectly written application can become vulnerable if network access isn't configured properly.&lt;/p&gt;

&lt;p&gt;Security Groups provide one of the first layers of defense.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Changed My Perspective
&lt;/h2&gt;

&lt;p&gt;The first time I configured a Security Group, it felt like just another setup step before launching an instance.&lt;/p&gt;

&lt;p&gt;Now I see it differently.&lt;/p&gt;

&lt;p&gt;Every rule is answering a simple question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Who should be allowed to communicate with this resource?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The more I learn AWS, the more I realize that cloud security isn't about blocking everything.&lt;/p&gt;

&lt;p&gt;It's about allowing only what is necessary.&lt;/p&gt;

&lt;p&gt;And Security Groups are one of the simplest and most effective tools AWS provides for doing exactly that.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Security Groups looked complicated when I first encountered them.&lt;/p&gt;

&lt;p&gt;Today, I think of them much more simply.&lt;/p&gt;

&lt;p&gt;They're the gatekeepers of AWS resources.&lt;/p&gt;

&lt;p&gt;They decide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Who can enter&lt;/li&gt;
&lt;li&gt;What traffic is allowed&lt;/li&gt;
&lt;li&gt;What traffic should be blocked&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And understanding that concept helped me appreciate why Security Groups appear in almost every AWS architecture diagram.&lt;/p&gt;

&lt;p&gt;Sometimes the most important AWS services aren't the most exciting ones.&lt;/p&gt;

&lt;p&gt;They're the ones quietly protecting everything behind the scenes.&lt;/p&gt;




</description>
      <category>aws</category>
      <category>cloudcomputing</category>
      <category>security</category>
      <category>devops</category>
    </item>
    <item>
      <title>Why Doesn't Everyone Connect to the Same Server? Understanding AWS Elastic Load Balancer (ELB)</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Mon, 20 Jul 2026 05:51:01 +0000</pubDate>
      <link>https://dev.to/anupa_supul/why-doesnt-everyone-connect-to-the-same-server-understanding-aws-elastic-load-balancer-elb-2c33</link>
      <guid>https://dev.to/anupa_supul/why-doesnt-everyone-connect-to-the-same-server-understanding-aws-elastic-load-balancer-elb-2c33</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8aab24m3v30rf3ypxs3v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8aab24m3v30rf3ypxs3v.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;While learning AWS, I noticed something interesting.&lt;/p&gt;

&lt;p&gt;In almost every AWS architecture diagram, there was a service sitting in front of multiple servers.&lt;/p&gt;

&lt;p&gt;It looked something like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Users
   │
   ▼
Load Balancer
   │
 ┌─┴─┐
 ▼   ▼
EC2 EC2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;At first, I didn't understand why it was there.&lt;/p&gt;

&lt;p&gt;I kept thinking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Why can't users just connect directly to the server?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;After all, if the server is running my application, shouldn't users talk to it directly?&lt;/p&gt;

&lt;p&gt;The more I learned, the more I realized that this simple service solves a huge problem.&lt;/p&gt;

&lt;p&gt;And that's how I discovered AWS Elastic Load Balancer (ELB).&lt;/p&gt;




&lt;h2&gt;
  
  
  The Question That Made Me Curious
&lt;/h2&gt;

&lt;p&gt;Imagine I build a website.&lt;/p&gt;

&lt;p&gt;On a normal day, maybe &lt;strong&gt;100 people&lt;/strong&gt; visit it.&lt;/p&gt;

&lt;p&gt;One server is enough.&lt;/p&gt;

&lt;p&gt;Everything works smoothly.&lt;/p&gt;

&lt;p&gt;Now imagine my website suddenly goes viral.&lt;/p&gt;

&lt;p&gt;Thousands of people start visiting at the same time.&lt;/p&gt;

&lt;p&gt;What happens?&lt;/p&gt;

&lt;p&gt;Every request goes to the same server.&lt;/p&gt;

&lt;p&gt;Eventually, that server becomes overwhelmed.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pages become slow&lt;/li&gt;
&lt;li&gt;Users start waiting&lt;/li&gt;
&lt;li&gt;Requests fail&lt;/li&gt;
&lt;li&gt;Visitors leave&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's when I realized:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The problem isn't just having servers.&lt;/p&gt;

&lt;p&gt;It's deciding how traffic should be shared between them.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The Coffee Shop Analogy
&lt;/h2&gt;

&lt;p&gt;This was the example that made everything click for me.&lt;/p&gt;

&lt;p&gt;Imagine a coffee shop with only one cashier.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;500 Customers
      │
      ▼
  1 Cashier
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The line becomes huge.&lt;/p&gt;

&lt;p&gt;Customers wait.&lt;/p&gt;

&lt;p&gt;Some leave before getting served.&lt;/p&gt;

&lt;p&gt;Now imagine adding three more cashiers.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;500 Customers
      │
      ▼
 ┌─────────┐
 │ Manager │
 └─────────┘
  │  │  │  │
  ▼  ▼  ▼  ▼
 C1 C2 C3 C4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The manager directs customers to whichever cashier is available.&lt;/p&gt;

&lt;p&gt;Nobody has to choose a cashier manually.&lt;/p&gt;

&lt;p&gt;The workload gets distributed automatically.&lt;/p&gt;

&lt;p&gt;That manager is basically what a Load Balancer does.&lt;/p&gt;




&lt;h2&gt;
  
  
  So... What Is an Elastic Load Balancer?
&lt;/h2&gt;

&lt;p&gt;The simplest way I understand it is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;An Elastic Load Balancer automatically distributes incoming traffic across multiple servers.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead of sending every user to one server, AWS spreads the requests across several servers.&lt;/p&gt;

&lt;p&gt;Benefits include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Improved performance&lt;/li&gt;
&lt;li&gt;Higher availability&lt;/li&gt;
&lt;li&gt;Better fault tolerance&lt;/li&gt;
&lt;li&gt;Handling traffic spikes&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Without a Load Balancer
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;10,000 Users
      │
      ▼
     EC2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;One server has to handle everything.&lt;/p&gt;

&lt;p&gt;If it fails, the application becomes unavailable.&lt;/p&gt;




&lt;h2&gt;
  
  
  With a Load Balancer
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;10,000 Users
       │
       ▼
 Load Balancer
   │    │    │
   ▼    ▼    ▼
 EC2  EC2  EC2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Traffic gets shared.&lt;/p&gt;

&lt;p&gt;Each server handles a smaller amount of work.&lt;/p&gt;

&lt;p&gt;The application stays responsive.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Happens If a Server Fails?
&lt;/h2&gt;

&lt;p&gt;Without a Load Balancer:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Users
  │
  ▼
Failed Server ❌
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Website unavailable.&lt;/p&gt;

&lt;p&gt;With a Load Balancer:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Users
  │
  ▼
Load Balancer
 │     │     │
 ▼     ▼     ▼
❌    EC2   EC2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Traffic automatically moves to healthy servers.&lt;/p&gt;

&lt;p&gt;Most users never notice anything happened.&lt;/p&gt;




&lt;h2&gt;
  
  
  How ELB Works With Auto Scaling
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Internet Users
       │
       ▼
 Load Balancer
       │
 ┌─────┼─────┐
 ▼     ▼     ▼
EC2   EC2   EC2
       │
       ▼
 Auto Scaling
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Auto Scaling decides how many servers exist.&lt;/li&gt;
&lt;li&gt;ELB decides where traffic goes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Together, they keep applications scalable and highly available.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;When I first saw Elastic Load Balancer in AWS diagrams, it looked like just another service with a complicated name.&lt;/p&gt;

&lt;p&gt;Now I see it much more simply.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"If thousands of users arrive at the same time, who decides where each request should go?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That's exactly the problem ELB solves.&lt;/p&gt;

&lt;p&gt;And for me, it was another reminder that cloud computing isn't just about servers.&lt;/p&gt;

&lt;p&gt;It's about designing systems that continue working even when demand grows.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudcomputing</category>
      <category>softwareengineering</category>
      <category>devops</category>
    </item>
    <item>
      <title>Understanding Amazon Route 53: How the Internet Finds Your Website</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Fri, 10 Jul 2026 11:00:15 +0000</pubDate>
      <link>https://dev.to/anupa_supul/understanding-amazon-route-53-how-the-internet-finds-your-website-1hi9</link>
      <guid>https://dev.to/anupa_supul/understanding-amazon-route-53-how-the-internet-finds-your-website-1hi9</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fupu6kbegs4l0zh7j42ra.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fupu6kbegs4l0zh7j42ra.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;When I first started learning web development, I never really thought about what happened after typing a website address into my browser.&lt;/p&gt;

&lt;p&gt;For example, if I typed:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.amazon.com" rel="noopener noreferrer"&gt;www.amazon.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;or&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.google.com" rel="noopener noreferrer"&gt;www.google.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;the website would simply open.&lt;/p&gt;

&lt;p&gt;It felt almost like magic.&lt;/p&gt;

&lt;p&gt;But one day, while learning AWS, I stopped and asked myself:&lt;/p&gt;

&lt;p&gt;"How does my computer know where this website actually is?"&lt;/p&gt;

&lt;p&gt;After all, computers don't understand names like google.com or amazon.com.&lt;/p&gt;

&lt;p&gt;They understand IP addresses.&lt;/p&gt;

&lt;p&gt;So who translates a website name into an IP address?&lt;/p&gt;

&lt;p&gt;That's when I discovered Amazon Route 53 and, more importantly, learned about DNS (Domain Name System).&lt;/p&gt;

&lt;p&gt;Before Learning DNS...&lt;/p&gt;

&lt;p&gt;To be honest, I assumed typing a website name was enough.&lt;/p&gt;

&lt;p&gt;I thought my browser somehow knew where every website lived.&lt;/p&gt;

&lt;p&gt;But that's not how the internet works.&lt;/p&gt;

&lt;p&gt;Every website has an IP address, something like this:&lt;/p&gt;

&lt;p&gt;54.239.28.85&lt;/p&gt;

&lt;p&gt;Imagine having to remember IP addresses for every website you visit.&lt;/p&gt;

&lt;p&gt;Instead of typing:&lt;/p&gt;

&lt;p&gt;google.com&lt;/p&gt;

&lt;p&gt;you would have to type:&lt;/p&gt;

&lt;p&gt;142.250.190.78&lt;/p&gt;

&lt;p&gt;That would be nearly impossible.&lt;/p&gt;

&lt;p&gt;Thankfully, DNS exists.&lt;/p&gt;

&lt;p&gt;What Is DNS?&lt;/p&gt;

&lt;p&gt;The simplest way I understand DNS is this:&lt;/p&gt;

&lt;p&gt;DNS is like the internet's phonebook.&lt;/p&gt;

&lt;p&gt;Instead of remembering someone's phone number, you save their name in your contacts.&lt;/p&gt;

&lt;p&gt;When you tap their name, your phone finds the correct number automatically.&lt;/p&gt;

&lt;p&gt;DNS works the same way.&lt;/p&gt;

&lt;p&gt;Instead of remembering an IP address, we simply type a domain name.&lt;/p&gt;

&lt;p&gt;DNS finds the correct IP address for us.&lt;/p&gt;

&lt;p&gt;That simple analogy made everything click.&lt;/p&gt;

&lt;p&gt;So... What Is Amazon Route 53?&lt;/p&gt;

&lt;p&gt;Once I understood DNS, Route 53 became much easier to understand.&lt;/p&gt;

&lt;p&gt;The easiest way I remember it is:&lt;/p&gt;

&lt;p&gt;Amazon Route 53 is AWS's DNS service.&lt;/p&gt;

&lt;p&gt;Its main job is to help users reach the correct website.&lt;/p&gt;

&lt;p&gt;When someone types:&lt;/p&gt;

&lt;p&gt;mywebsite.com&lt;/p&gt;

&lt;p&gt;Route 53 helps translate that name into the IP address of the server hosting the website.&lt;/p&gt;

&lt;p&gt;Without DNS, our browsers wouldn't know where to send the request.&lt;/p&gt;

&lt;p&gt;A Simple Example&lt;/p&gt;

&lt;p&gt;Imagine I've deployed my MERN application on an EC2 instance.&lt;/p&gt;

&lt;p&gt;The server has an IP address like this:&lt;/p&gt;

&lt;p&gt;13.229.xxx.xxx&lt;/p&gt;

&lt;p&gt;Technically, visitors could use that IP address to access my website.&lt;/p&gt;

&lt;p&gt;But let's be honest...&lt;/p&gt;

&lt;p&gt;Which is easier to remember?&lt;/p&gt;

&lt;p&gt;13.229.xxx.xxx&lt;/p&gt;

&lt;p&gt;or&lt;/p&gt;

&lt;p&gt;myportfolio.com&lt;/p&gt;

&lt;p&gt;The answer is obvious.&lt;/p&gt;

&lt;p&gt;Route 53 connects the domain name with the server's IP address.&lt;/p&gt;

&lt;p&gt;The Journey of a Website Request&lt;/p&gt;

&lt;p&gt;This was one of my favorite things to learn because it finally showed me what happens behind the scenes.&lt;/p&gt;

&lt;p&gt;When I type a website into my browser:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.mywebsite.com" rel="noopener noreferrer"&gt;www.mywebsite.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;the process looks something like this:&lt;/p&gt;

&lt;p&gt;You&lt;br&gt;
 │&lt;br&gt;
 ▼&lt;br&gt;
Browser&lt;br&gt;
 │&lt;br&gt;
 ▼&lt;br&gt;
DNS (Route 53)&lt;br&gt;
 │&lt;br&gt;
 ▼&lt;br&gt;
Find Server IP Address&lt;br&gt;
 │&lt;br&gt;
 ▼&lt;br&gt;
AWS Server (EC2)&lt;br&gt;
 │&lt;br&gt;
 ▼&lt;br&gt;
Website Loads&lt;/p&gt;

&lt;p&gt;The whole process happens in just a few milliseconds.&lt;/p&gt;

&lt;p&gt;As users, we hardly even notice it.&lt;/p&gt;

&lt;p&gt;Why Is It Called Route 53?&lt;/p&gt;

&lt;p&gt;This was a question I was curious about.&lt;/p&gt;

&lt;p&gt;It turns out the number 53 comes from Port 53, the standard network port used by DNS.&lt;/p&gt;

&lt;p&gt;Once I learned that, the name suddenly made much more sense.&lt;/p&gt;

&lt;p&gt;More Than Just Finding Websites&lt;/p&gt;

&lt;p&gt;As I kept learning, I realized Route 53 can do much more than simply translate domain names.&lt;/p&gt;

&lt;p&gt;It can also:&lt;/p&gt;

&lt;p&gt;Route users to different servers.&lt;br&gt;
Improve availability.&lt;br&gt;
Support disaster recovery.&lt;br&gt;
Help direct users to the nearest AWS Region.&lt;/p&gt;

&lt;p&gt;I haven't explored all of these features yet, but it's exciting to know there's much more to learn.&lt;/p&gt;

&lt;p&gt;How Route 53 Fits Into Everything I've Learned&lt;/p&gt;

&lt;p&gt;One thing I really like about AWS is how each service connects with another.&lt;/p&gt;

&lt;p&gt;Route 53 doesn't replace EC2.&lt;/p&gt;

&lt;p&gt;It doesn't replace CloudFront.&lt;/p&gt;

&lt;p&gt;Instead, it works together with them.&lt;/p&gt;

&lt;p&gt;A simple setup might look like this:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;         User
           │
           ▼
  Route 53 (DNS)
           │
           ▼
    CloudFront
           │
           ▼
    Load Balancer
           │
           ▼
         EC2
           │
           ▼
       Database
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Seeing the bigger picture made me realize that AWS isn't just a collection of individual services.&lt;/p&gt;

&lt;p&gt;They're all designed to work together.&lt;/p&gt;

&lt;p&gt;What Changed My Perspective&lt;/p&gt;

&lt;p&gt;Before learning AWS, I thought opening a website was as simple as typing its name into the browser.&lt;/p&gt;

&lt;p&gt;Now I understand there's an entire system working behind the scenes before the website even starts loading.&lt;/p&gt;

&lt;p&gt;A simple service like DNS makes the internet much easier to use.&lt;/p&gt;

&lt;p&gt;Without it, we'd all be trying to remember long IP addresses instead of simple website names.&lt;/p&gt;

&lt;p&gt;It's one of those things we use every single day but rarely stop to think about.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;When I first heard the name Amazon Route 53, I honestly had no idea what it did.&lt;/p&gt;

&lt;p&gt;Now I think of it much more simply.&lt;/p&gt;

&lt;p&gt;It's the service that helps the internet answer one basic question:&lt;/p&gt;

&lt;p&gt;"Where should this request go?"&lt;/p&gt;

&lt;p&gt;Without DNS, finding websites would be far more complicated.&lt;/p&gt;

&lt;p&gt;Learning Route 53 helped me appreciate that even the simplest action—typing a website name—depends on an incredible amount of technology working quietly in the background.&lt;/p&gt;

&lt;p&gt;And that's another reason why I'm enjoying this AWS learning journey.&lt;/p&gt;

&lt;p&gt;Every topic makes me look at the internet a little differently.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudcomputing</category>
      <category>amazon</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>Why Doesn't AWS Want Me Using the Root Account? Understanding IAM</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Fri, 10 Jul 2026 10:51:37 +0000</pubDate>
      <link>https://dev.to/anupa_supul/why-doesnt-aws-want-me-using-the-root-account-understanding-iam-4cl4</link>
      <guid>https://dev.to/anupa_supul/why-doesnt-aws-want-me-using-the-root-account-understanding-iam-4cl4</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx9f6tpyjdz79mp2y4zoc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx9f6tpyjdz79mp2y4zoc.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;br&gt;
The day I created my AWS account, I was excited to start exploring cloud computing.&lt;/p&gt;

&lt;p&gt;I logged in, looked around the AWS Management Console, and couldn't wait to launch my first EC2 instance.&lt;/p&gt;

&lt;p&gt;But before I did anything, I noticed something interesting.&lt;/p&gt;

&lt;p&gt;AWS kept reminding me:&lt;/p&gt;

&lt;p&gt;"Don't use your root account for everyday tasks."&lt;/p&gt;

&lt;p&gt;At first, I didn't understand why.&lt;/p&gt;

&lt;p&gt;I remember thinking,&lt;/p&gt;

&lt;p&gt;"It's my account. Why shouldn't I use it?"&lt;/p&gt;

&lt;p&gt;If the root account has the highest level of access, wouldn't it make sense to use it all the time?&lt;/p&gt;

&lt;p&gt;The more I learned, the more I realized AWS wasn't trying to make things difficult.&lt;/p&gt;

&lt;p&gt;It was actually trying to protect me.&lt;/p&gt;

&lt;p&gt;That curiosity introduced me to one of the most important AWS services: IAM (Identity and Access Management).&lt;/p&gt;

&lt;p&gt;My First Thought&lt;/p&gt;

&lt;p&gt;Coming from web development, I was used to creating one account and using it for everything.&lt;/p&gt;

&lt;p&gt;So when AWS suggested creating another user instead of using the root account, it felt unnecessary.&lt;/p&gt;

&lt;p&gt;I thought,&lt;/p&gt;

&lt;p&gt;"I'll be the only one using this account anyway."&lt;/p&gt;

&lt;p&gt;But then I imagined something.&lt;/p&gt;

&lt;p&gt;What if someone somehow got access to my root account?&lt;/p&gt;

&lt;p&gt;They wouldn't just have access to one EC2 instance.&lt;/p&gt;

&lt;p&gt;They could:&lt;/p&gt;

&lt;p&gt;Delete every resource&lt;br&gt;
Remove databases&lt;br&gt;
Change billing settings&lt;br&gt;
Create new users&lt;br&gt;
Close the AWS account&lt;/p&gt;

&lt;p&gt;Suddenly, AWS's warning started making a lot more sense.&lt;/p&gt;

&lt;p&gt;So... What Is the Root Account?&lt;/p&gt;

&lt;p&gt;The root account is the account you create when you first sign up for AWS.&lt;/p&gt;

&lt;p&gt;It's like the master key to everything inside your AWS account.&lt;/p&gt;

&lt;p&gt;With it, you can:&lt;/p&gt;

&lt;p&gt;Access every AWS service&lt;br&gt;
Change account settings&lt;br&gt;
Manage billing&lt;br&gt;
Create or delete users&lt;br&gt;
Delete almost every resource&lt;/p&gt;

&lt;p&gt;Because it has unlimited permissions, AWS recommends using it only when absolutely necessary.&lt;/p&gt;

&lt;p&gt;For everyday work, there's a better option.&lt;/p&gt;

&lt;p&gt;That's where IAM comes in.&lt;/p&gt;

&lt;p&gt;What Is IAM?&lt;/p&gt;

&lt;p&gt;The simplest way I understand IAM is this:&lt;/p&gt;

&lt;p&gt;IAM helps you decide who can access your AWS account and what they're allowed to do.&lt;/p&gt;

&lt;p&gt;Instead of everyone using the powerful root account, you create separate IAM users with only the permissions they need.&lt;/p&gt;

&lt;p&gt;That immediately reminded me of something we use in everyday life.&lt;/p&gt;

&lt;p&gt;The Analogy That Helped Me&lt;/p&gt;

&lt;p&gt;Imagine you own a company.&lt;/p&gt;

&lt;p&gt;You probably wouldn't hand your master office key to every employee.&lt;/p&gt;

&lt;p&gt;Instead:&lt;/p&gt;

&lt;p&gt;The manager gets access to most areas.&lt;br&gt;
The accountant can access financial records.&lt;br&gt;
The receptionist can access only the front desk.&lt;br&gt;
Visitors can enter only the waiting area.&lt;/p&gt;

&lt;p&gt;Everyone has different responsibilities.&lt;/p&gt;

&lt;p&gt;Everyone gets different levels of access.&lt;/p&gt;

&lt;p&gt;IAM works exactly the same way.&lt;/p&gt;

&lt;p&gt;Instead of giving every user full control, AWS lets you decide exactly what each person can do.&lt;/p&gt;

&lt;p&gt;The Four IAM Concepts That Finally Clicked for Me&lt;/p&gt;

&lt;p&gt;When I first saw IAM documentation, I came across four terms over and over again:&lt;/p&gt;

&lt;p&gt;Users&lt;br&gt;
Groups&lt;br&gt;
Roles&lt;br&gt;
Policies&lt;/p&gt;

&lt;p&gt;At first, they all sounded similar.&lt;/p&gt;

&lt;p&gt;But once I understood their purpose, they became much easier to remember.&lt;/p&gt;

&lt;p&gt;👤 IAM Users&lt;/p&gt;

&lt;p&gt;An IAM User represents a person or an application that needs access to AWS.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;Me&lt;br&gt;
Another developer&lt;br&gt;
A CI/CD pipeline&lt;/p&gt;

&lt;p&gt;Instead of sharing one account, everyone gets their own login.&lt;/p&gt;

&lt;p&gt;That makes AWS much safer and easier to manage.&lt;/p&gt;

&lt;p&gt;👥 IAM Groups&lt;/p&gt;

&lt;p&gt;Imagine I have five developers working on the same project.&lt;/p&gt;

&lt;p&gt;Giving each person the same permissions one by one would be repetitive.&lt;/p&gt;

&lt;p&gt;Instead, I can create a group called:&lt;/p&gt;

&lt;p&gt;Developers&lt;/p&gt;

&lt;p&gt;Then simply add users to that group.&lt;/p&gt;

&lt;p&gt;Anyone who joins automatically receives the same permissions.&lt;/p&gt;

&lt;p&gt;That felt like a much smarter approach.&lt;/p&gt;

&lt;p&gt;📜 IAM Policies&lt;/p&gt;

&lt;p&gt;Policies are simply permission rules.&lt;/p&gt;

&lt;p&gt;They answer questions like:&lt;/p&gt;

&lt;p&gt;Can this user launch an EC2 instance?&lt;br&gt;
Can they upload files to S3?&lt;br&gt;
Can they delete databases?&lt;/p&gt;

&lt;p&gt;Without a policy, an IAM user can't do very much.&lt;/p&gt;

&lt;p&gt;Policies define what is allowed and what isn't.&lt;/p&gt;

&lt;p&gt;🎭 IAM Roles&lt;/p&gt;

&lt;p&gt;Roles confused me the most at first.&lt;/p&gt;

&lt;p&gt;Then I learned they're a little different from users.&lt;/p&gt;

&lt;p&gt;Instead of representing a person, a role is usually assumed temporarily by an AWS service or an application.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;An EC2 instance might need permission to upload files to S3.&lt;/p&gt;

&lt;p&gt;Instead of storing secret access keys on the server, AWS lets the EC2 instance assume an IAM Role.&lt;/p&gt;

&lt;p&gt;That role gives it only the permissions it needs.&lt;/p&gt;

&lt;p&gt;Once I understood that, roles made much more sense.&lt;/p&gt;

&lt;p&gt;The Principle That Stuck With Me&lt;/p&gt;

&lt;p&gt;While learning IAM, I came across an idea called the Principle of Least Privilege.&lt;/p&gt;

&lt;p&gt;It simply means:&lt;/p&gt;

&lt;p&gt;Only give the permissions that are actually needed. Nothing more.&lt;/p&gt;

&lt;p&gt;If someone only needs to read files from S3...&lt;/p&gt;

&lt;p&gt;Don't give them permission to delete S3 buckets.&lt;/p&gt;

&lt;p&gt;If someone only needs to view CloudWatch logs...&lt;/p&gt;

&lt;p&gt;Don't give them administrator access.&lt;/p&gt;

&lt;p&gt;It's a simple idea, but it makes a huge difference when it comes to security.&lt;/p&gt;

&lt;p&gt;How I Plan to Use IAM&lt;/p&gt;

&lt;p&gt;Now that I understand IAM better, here's how I plan to use my AWS account:&lt;/p&gt;

&lt;p&gt;Keep the root account safe.&lt;br&gt;
Enable Multi-Factor Authentication (MFA).&lt;br&gt;
Create an IAM user for everyday work.&lt;br&gt;
Give only the permissions I actually need.&lt;br&gt;
Use roles whenever AWS services need to communicate securely.&lt;/p&gt;

&lt;p&gt;It feels like a much safer way to work.&lt;/p&gt;

&lt;p&gt;What Changed My Perspective&lt;/p&gt;

&lt;p&gt;Before learning AWS, I thought security started after deploying an application.&lt;/p&gt;

&lt;p&gt;Now I realize it starts much earlier.&lt;/p&gt;

&lt;p&gt;It starts with something as simple as deciding which account you log in with.&lt;/p&gt;

&lt;p&gt;IAM taught me that good security isn't about making things complicated.&lt;/p&gt;

&lt;p&gt;It's about giving the right people the right access—and nothing more.&lt;/p&gt;

&lt;p&gt;That lesson will probably stay with me long after I finish learning AWS.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;When I first saw AWS warning me not to use the root account, I honestly thought it was just another recommendation that I could ignore.&lt;/p&gt;

&lt;p&gt;Now I understand why AWS takes it so seriously.&lt;/p&gt;

&lt;p&gt;The root account is incredibly powerful.&lt;/p&gt;

&lt;p&gt;Using it every day isn't just unnecessary—it increases the risk if something ever goes wrong.&lt;/p&gt;

&lt;p&gt;Learning IAM helped me understand that cloud security isn't only about firewalls or encryption.&lt;/p&gt;

&lt;p&gt;Sometimes it starts with a simple decision:&lt;/p&gt;

&lt;p&gt;Who should have access, and how much access do they really need?&lt;/p&gt;

&lt;p&gt;For me, IAM was one of those topics that looked boring at first but turned out to be one of the most practical lessons I've learned in AWS.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudcomputing</category>
      <category>webdev</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Can a Website Run Without a Server? Understanding AWS Lambda</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Thu, 09 Jul 2026 06:34:13 +0000</pubDate>
      <link>https://dev.to/anupa_supul/can-a-website-run-without-a-server-understanding-aws-lambda-4ei4</link>
      <guid>https://dev.to/anupa_supul/can-a-website-run-without-a-server-understanding-aws-lambda-4ei4</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4q6bqf9u3ve0cfplbtx9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4q6bqf9u3ve0cfplbtx9.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One day, while exploring AWS services, I came across a term that immediately caught my attention.&lt;/p&gt;

&lt;p&gt;Serverless Computing.&lt;/p&gt;

&lt;p&gt;My first reaction was honestly something like this:&lt;/p&gt;

&lt;p&gt;"Wait... how can something run without a server?"&lt;/p&gt;

&lt;p&gt;That didn't make any sense to me.&lt;/p&gt;

&lt;p&gt;Every application has to run somewhere.&lt;/p&gt;

&lt;p&gt;There has to be a computer.&lt;/p&gt;

&lt;p&gt;There has to be memory.&lt;/p&gt;

&lt;p&gt;There has to be a processor.&lt;/p&gt;

&lt;p&gt;So how can AWS say it's serverless?&lt;/p&gt;

&lt;p&gt;The more I learned, the more I realized something interesting.&lt;/p&gt;

&lt;p&gt;Serverless doesn't mean there are no servers.&lt;/p&gt;

&lt;p&gt;It simply means I don't have to manage them.&lt;/p&gt;

&lt;p&gt;That small difference completely changed how I understood AWS Lambda.&lt;/p&gt;

&lt;p&gt;Before Learning Lambda...&lt;/p&gt;

&lt;p&gt;By this point in my AWS journey, I had already learned about Amazon EC2.&lt;/p&gt;

&lt;p&gt;EC2 made perfect sense.&lt;/p&gt;

&lt;p&gt;If I wanted to run an application, I would:&lt;/p&gt;

&lt;p&gt;Launch an EC2 instance&lt;br&gt;
Install my software&lt;br&gt;
Configure everything&lt;br&gt;
Keep the server running&lt;br&gt;
Pay while it was running&lt;/p&gt;

&lt;p&gt;It felt very similar to owning a computer in the cloud.&lt;/p&gt;

&lt;p&gt;Then AWS introduced Lambda.&lt;/p&gt;

&lt;p&gt;And suddenly...&lt;/p&gt;

&lt;p&gt;Everything worked differently.&lt;/p&gt;

&lt;p&gt;Let's Imagine a Small Example&lt;/p&gt;

&lt;p&gt;Imagine I build a simple contact form for my website.&lt;/p&gt;

&lt;p&gt;Every time someone clicks Submit, I want to:&lt;/p&gt;

&lt;p&gt;Save their message&lt;br&gt;
Send a confirmation email&lt;br&gt;
Store the data in a database&lt;/p&gt;

&lt;p&gt;Now I asked myself:&lt;/p&gt;

&lt;p&gt;Do I really need a server running all day just to wait for someone to click one button?&lt;/p&gt;

&lt;p&gt;Probably not.&lt;/p&gt;

&lt;p&gt;Most of the time...&lt;/p&gt;

&lt;p&gt;Nobody is clicking anything.&lt;/p&gt;

&lt;p&gt;The server is simply waiting.&lt;/p&gt;

&lt;p&gt;That doesn't feel very efficient.&lt;/p&gt;

&lt;p&gt;So... What Is AWS Lambda?&lt;/p&gt;

&lt;p&gt;The easiest way I understand Lambda is this:&lt;/p&gt;

&lt;p&gt;AWS Lambda runs my code only when something happens.&lt;/p&gt;

&lt;p&gt;That "something" is called an event.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;A user uploads an image.&lt;br&gt;
Someone submits a form.&lt;br&gt;
A new file is added to Amazon S3.&lt;br&gt;
An API request is received.&lt;br&gt;
A scheduled task runs every night.&lt;/p&gt;

&lt;p&gt;Instead of keeping a server running all day...&lt;/p&gt;

&lt;p&gt;AWS simply waits for the event.&lt;/p&gt;

&lt;p&gt;When it happens...&lt;/p&gt;

&lt;p&gt;My code runs.&lt;/p&gt;

&lt;p&gt;When it's finished...&lt;/p&gt;

&lt;p&gt;Everything stops.&lt;/p&gt;

&lt;p&gt;A Simple Way to Picture It&lt;/p&gt;

&lt;p&gt;Instead of this:&lt;/p&gt;

&lt;p&gt;24 Hours&lt;br&gt;
──────────────────────────────&lt;br&gt;
🖥️ Server running all day&lt;/p&gt;

&lt;p&gt;Lambda looks more like this:&lt;/p&gt;

&lt;p&gt;User clicks button&lt;br&gt;
        │&lt;br&gt;
        ▼&lt;br&gt;
    AWS Lambda&lt;br&gt;
        │&lt;br&gt;
     Runs code&lt;br&gt;
        │&lt;br&gt;
      Stops&lt;/p&gt;

&lt;p&gt;Nothing runs when nothing is happening.&lt;/p&gt;

&lt;p&gt;The Analogy That Helped Me&lt;/p&gt;

&lt;p&gt;Imagine hiring a photographer.&lt;/p&gt;

&lt;p&gt;You have two options.&lt;/p&gt;

&lt;p&gt;Option 1&lt;/p&gt;

&lt;p&gt;Hire them for the entire day.&lt;/p&gt;

&lt;p&gt;Even if they only take photos for one hour...&lt;/p&gt;

&lt;p&gt;You still pay for the whole day.&lt;/p&gt;

&lt;p&gt;That's similar to running an EC2 instance.&lt;/p&gt;

&lt;p&gt;Option 2&lt;/p&gt;

&lt;p&gt;Call the photographer only when you actually need photos.&lt;/p&gt;

&lt;p&gt;They arrive.&lt;/p&gt;

&lt;p&gt;Do the job.&lt;/p&gt;

&lt;p&gt;Leave.&lt;/p&gt;

&lt;p&gt;That's much closer to how Lambda works.&lt;/p&gt;

&lt;p&gt;You only use computing resources when your code actually needs to run.&lt;/p&gt;

&lt;p&gt;Where Can Lambda Be Used?&lt;/p&gt;

&lt;p&gt;As I learned more, I realized Lambda appears in many real applications.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;Sending emails&lt;br&gt;
Resizing uploaded images&lt;br&gt;
Processing payments&lt;br&gt;
Running scheduled backups&lt;br&gt;
Handling API requests&lt;br&gt;
Automating small tasks&lt;/p&gt;

&lt;p&gt;Most of these jobs don't need a server running 24 hours a day.&lt;/p&gt;

&lt;p&gt;They only need to run for a few seconds.&lt;/p&gt;

&lt;p&gt;That's exactly where Lambda shines.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9mdxdzrskrlel9rvvfi3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9mdxdzrskrlel9rvvfi3.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I don't think one is better than the other.&lt;/p&gt;

&lt;p&gt;They simply solve different problems.&lt;/p&gt;

&lt;p&gt;What Changed My Perspective&lt;/p&gt;

&lt;p&gt;Before learning AWS, I assumed every application needed a server that was always running.&lt;/p&gt;

&lt;p&gt;Now I know that's not always true.&lt;/p&gt;

&lt;p&gt;Sometimes all you need is a small piece of code that wakes up, does its job, and goes back to sleep.&lt;/p&gt;

&lt;p&gt;That idea felt completely new to me.&lt;/p&gt;

&lt;p&gt;It also made me realize how much cloud computing has evolved.&lt;/p&gt;

&lt;p&gt;Instead of thinking about servers first...&lt;/p&gt;

&lt;p&gt;We can simply think about solving problems.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;When I first heard the word serverless, I thought AWS was trying to tell me that applications somehow ran without computers.&lt;/p&gt;

&lt;p&gt;Now I understand it much differently.&lt;/p&gt;

&lt;p&gt;The servers are still there.&lt;/p&gt;

&lt;p&gt;I just don't have to think about them anymore.&lt;/p&gt;

&lt;p&gt;And honestly...&lt;/p&gt;

&lt;p&gt;That's one of the coolest things I've learned so far in my AWS journey.&lt;/p&gt;

&lt;p&gt;It reminded me that cloud computing isn't just about bigger servers.&lt;/p&gt;

&lt;p&gt;Sometimes it's about using less infrastructure to solve the same problem more efficiently.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>amazon</category>
      <category>lambda</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>I Finally Understood AWS Data Pipelines After Following a Single Customer Click</title>
      <dc:creator>Anupa Supul</dc:creator>
      <pubDate>Wed, 08 Jul 2026 04:45:11 +0000</pubDate>
      <link>https://dev.to/anupa_supul/i-finally-understood-aws-data-pipelines-after-following-a-single-customer-click-4njh</link>
      <guid>https://dev.to/anupa_supul/i-finally-understood-aws-data-pipelines-after-following-a-single-customer-click-4njh</guid>
      <description>&lt;p&gt;beginner has been there.&lt;/p&gt;

&lt;p&gt;You memorize services like:&lt;/p&gt;

&lt;p&gt;Amazon S3&lt;br&gt;
Kinesis&lt;br&gt;
Lambda&lt;br&gt;
Glue&lt;br&gt;
Athena&lt;br&gt;
SageMaker&lt;/p&gt;

&lt;p&gt;Then someone asks,&lt;/p&gt;

&lt;p&gt;"How do these services actually work together?"&lt;br&gt;
Silence.&lt;br&gt;
The problem isn't the services.&lt;/p&gt;

&lt;p&gt;It's that AWS documentation teaches them individually, while real companies use them together.&lt;br&gt;
So let's forget the documentation for a minute.&lt;br&gt;
Instead, let's follow one customer click inside an e-commerce application.&lt;br&gt;
By the end, you'll understand why each AWS service exists.&lt;/p&gt;

&lt;p&gt;Imagine This&lt;/p&gt;

&lt;p&gt;A customer opens your shopping website.&lt;br&gt;
They search for:&lt;br&gt;
Wireless Headphones&lt;br&gt;
A few seconds later...&lt;/p&gt;

&lt;p&gt;The website recommends another product.&lt;br&gt;
The sales dashboard updates.&lt;br&gt;
Marketing learns about the search trend.&lt;/p&gt;

&lt;p&gt;Inventory changes.&lt;/p&gt;

&lt;p&gt;And somewhere in the background...&lt;br&gt;
An AI model just became a little smarter.&lt;/p&gt;

&lt;p&gt;How?&lt;br&gt;
Let's trace the journey.&lt;/p&gt;

&lt;p&gt;Step 1. Everything Starts with Data&lt;/p&gt;

&lt;p&gt;Every action creates an event.&lt;br&gt;
User Login&lt;br&gt;
Search Product&lt;br&gt;
Add to Cart&lt;br&gt;
Purchase&lt;br&gt;
Leave Review&lt;br&gt;
That information needs somewhere to live.&lt;br&gt;
Amazon DynamoDB&lt;br&gt;
DynamoDB stores application data.&lt;/p&gt;

&lt;p&gt;Examples include:&lt;/p&gt;

&lt;p&gt;Customer profiles&lt;br&gt;
Orders&lt;br&gt;
Shopping carts&lt;br&gt;
Product information&lt;br&gt;
User sessions&lt;/p&gt;

&lt;p&gt;Think of DynamoDB as the application's working database.&lt;br&gt;
It is extremely fast because millions of users might be writing data at the same time.&lt;/p&gt;

&lt;p&gt;Step 2. Don't Wait Until Tomorrow&lt;br&gt;
Imagine Amazon waited until midnight before analyzing customer behavior.&lt;/p&gt;

&lt;p&gt;Too late.&lt;br&gt;
Modern applications react instantly.&lt;br&gt;
That's where streaming begins.&lt;br&gt;
Amazon Kinesis Data Streams&lt;br&gt;
Kinesis continuously collects events as they happen.&lt;/p&gt;

&lt;p&gt;Website&lt;br&gt;
        │&lt;br&gt;
        ▼&lt;br&gt;
Customer Events&lt;br&gt;
        │&lt;br&gt;
        ▼&lt;br&gt;
Amazon Kinesis&lt;/p&gt;

&lt;p&gt;Every click...&lt;br&gt;
Every purchase...&lt;br&gt;
Every API request...&lt;br&gt;
flows into Kinesis.&lt;br&gt;
Think of it as a highway carrying millions of tiny data packets every second.&lt;/p&gt;

&lt;p&gt;Step 3. Getting Data Where It Needs to Go&lt;/p&gt;

&lt;p&gt;Collecting data is only half the job.&lt;br&gt;
Now it needs to be delivered somewhere useful.&lt;br&gt;
Amazon Data Firehose&lt;br&gt;
If Kinesis is the highway,&lt;br&gt;
Firehose is the delivery truck.&lt;/p&gt;

&lt;p&gt;It automatically moves streaming data into destinations like:&lt;/p&gt;

&lt;p&gt;Amazon S3&lt;br&gt;
Amazon Redshift&lt;br&gt;
Amazon OpenSearch&lt;/p&gt;

&lt;p&gt;No servers.&lt;br&gt;
No scripts.&lt;br&gt;
No cron jobs.&lt;br&gt;
Just continuous delivery.&lt;/p&gt;

&lt;p&gt;Step 4. Raw Data Is Ugly&lt;/p&gt;

&lt;p&gt;Real production data isn't clean.&lt;br&gt;
It contains things like:&lt;/p&gt;

&lt;p&gt;{&lt;br&gt;
"name":"john",&lt;br&gt;
"country":"usa",&lt;br&gt;
"age":"25",&lt;br&gt;
"status":"TRUE"&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;Another application might send:&lt;/p&gt;

&lt;p&gt;{&lt;br&gt;
"Name":"John",&lt;br&gt;
"Country":"USA",&lt;br&gt;
"Age":25&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;Now imagine millions of records like this.&lt;br&gt;
Someone has to clean them.&lt;/p&gt;

&lt;p&gt;AWS Lambda&lt;br&gt;
Lambda automatically processes incoming data.&lt;/p&gt;

&lt;p&gt;Typical tasks include:&lt;/p&gt;

&lt;p&gt;Removing duplicates&lt;br&gt;
Fixing formats&lt;br&gt;
Validating records&lt;br&gt;
Filtering bad data&lt;br&gt;
Converting JSON into CSV&lt;/p&gt;

&lt;p&gt;No servers are running.&lt;br&gt;
The function executes only when data arrives.&lt;/p&gt;

&lt;p&gt;Step 5. The Data Needs a Home&lt;/p&gt;

&lt;p&gt;After processing, everything is stored.&lt;br&gt;
Amazon S3&lt;/p&gt;

&lt;p&gt;This is where many AWS architectures begin to make sense.&lt;br&gt;
S3 is not just file storage.&lt;br&gt;
It becomes the company's Data Lake.&lt;/p&gt;

&lt;p&gt;Inside S3 you might find:&lt;/p&gt;

&lt;p&gt;Images&lt;br&gt;
Videos&lt;br&gt;
CSV files&lt;br&gt;
Application logs&lt;br&gt;
Customer events&lt;br&gt;
Machine learning datasets&lt;br&gt;
Backups&lt;/p&gt;

&lt;p&gt;Think of S3 as the central warehouse where every department stores information.&lt;/p&gt;

&lt;p&gt;Step 6. Imagine Finding One File Among 50 Million&lt;/p&gt;

&lt;p&gt;Storage isn't enough.&lt;/p&gt;

&lt;p&gt;People need to know:&lt;/p&gt;

&lt;p&gt;Where is the file?&lt;br&gt;
What columns does it contain?&lt;br&gt;
Which dataset owns it?&lt;/p&gt;

&lt;p&gt;That's metadata.&lt;/p&gt;

&lt;p&gt;AWS Glue Data Catalog&lt;/p&gt;

&lt;p&gt;Glue Catalog doesn't store your data.&lt;/p&gt;

&lt;p&gt;It stores information about your data.&lt;/p&gt;

&lt;p&gt;Think of a library.&lt;/p&gt;

&lt;p&gt;The books are the data.&lt;/p&gt;

&lt;p&gt;The catalog tells you exactly where each book lives.&lt;/p&gt;

&lt;p&gt;Without Glue,&lt;/p&gt;

&lt;p&gt;your data lake becomes a giant messy folder.&lt;/p&gt;

&lt;p&gt;Step 7. Finally... Someone Wants Answers&lt;/p&gt;

&lt;p&gt;The business team doesn't care where the data came from.&lt;/p&gt;

&lt;p&gt;They ask questions like:&lt;/p&gt;

&lt;p&gt;Which products sold the most today?&lt;br&gt;
Which country generated the highest revenue?&lt;br&gt;
How many customers abandoned their cart?&lt;br&gt;
Amazon Athena&lt;/p&gt;

&lt;p&gt;Athena lets you query files stored in S3 using SQL.&lt;/p&gt;

&lt;p&gt;SELECT country,&lt;br&gt;
COUNT(*)&lt;br&gt;
FROM sales&lt;br&gt;
GROUP BY country;&lt;/p&gt;

&lt;p&gt;No database setup.&lt;/p&gt;

&lt;p&gt;No infrastructure.&lt;/p&gt;

&lt;p&gt;Just SQL.&lt;/p&gt;

&lt;p&gt;One of my favorite AWS services because it feels almost magical.&lt;/p&gt;

&lt;p&gt;Step 8. This Is Where AI Enters&lt;/p&gt;

&lt;p&gt;Now imagine months of customer data sitting safely inside S3.&lt;/p&gt;

&lt;p&gt;That data becomes training material.&lt;/p&gt;

&lt;p&gt;Amazon SageMaker AI&lt;/p&gt;

&lt;p&gt;SageMaker helps data scientists:&lt;/p&gt;

&lt;p&gt;Build models&lt;br&gt;
Train models&lt;br&gt;
Deploy models&lt;br&gt;
Monitor models&lt;/p&gt;

&lt;p&gt;Now the application can predict:&lt;/p&gt;

&lt;p&gt;Which customer is likely to buy&lt;br&gt;
Which transaction looks fraudulent&lt;br&gt;
Which products should be recommended&lt;br&gt;
Which inventory will run out next week&lt;/p&gt;

&lt;p&gt;This is where raw data becomes business intelligence.&lt;/p&gt;

&lt;p&gt;The Entire Journey&lt;br&gt;
Customer&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;DynamoDB&lt;br&gt;
(Store application data)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Kinesis&lt;br&gt;
(Stream events)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Data Firehose&lt;br&gt;
(Deliver events)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Lambda&lt;br&gt;
(Clean and transform)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Amazon S3&lt;br&gt;
(Store everything)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Glue Catalog&lt;br&gt;
(Organize metadata)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Athena&lt;br&gt;
(Analyze with SQL)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;SageMaker&lt;br&gt;
(Train AI models)&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Recommendations&lt;br&gt;
Predictions&lt;br&gt;
Dashboards&lt;br&gt;
Business Insights&lt;br&gt;
The Biggest Lesson I Learned&lt;/p&gt;

&lt;p&gt;At first, AWS looked like hundreds of unrelated services.&lt;/p&gt;

&lt;p&gt;Now I see something completely different.&lt;/p&gt;

&lt;p&gt;Every service has one responsibility.&lt;/p&gt;

&lt;p&gt;Service Responsibility&lt;br&gt;
DynamoDB    Store application data&lt;br&gt;
Kinesis Capture live events&lt;br&gt;
Firehose    Move streaming data&lt;br&gt;
Lambda  Process data&lt;br&gt;
S3  Store everything&lt;br&gt;
Glue    Organize metadata&lt;br&gt;
Athena  Query data&lt;br&gt;
SageMaker   Build AI models&lt;/p&gt;

&lt;p&gt;Individually, they're simple.&lt;/p&gt;

&lt;p&gt;Together, they power companies serving millions of users every day.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;Learning AWS isn't about memorizing service names.&lt;/p&gt;

&lt;p&gt;It's about understanding how data moves.&lt;/p&gt;

&lt;p&gt;Once you can follow a single customer click through an entire system, AWS starts feeling less like a list of products and more like a complete ecosystem.&lt;/p&gt;

&lt;p&gt;The next time someone asks,&lt;/p&gt;

&lt;p&gt;"Why does AWS have so many services?"&lt;/p&gt;

&lt;p&gt;You'll have a much better answer.&lt;/p&gt;

&lt;p&gt;Because each service solves one specific problem, and together they build the systems behind the applications we use every single day.&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>aws</category>
      <category>beginners</category>
      <category>dataengineering</category>
    </item>
  </channel>
</rss>
