A brief history of AWS architectures

Michael Wittig – 26 Feb 2019

The way you create architectures on AWS has evolved over the last ten years.

A brief history of AWS architectures

In this blog post, I demonstrate what is better today than ten years before.



In 2009, a typical architecture on AWS used the following components:

  • Classic Load Balancer (CLB): Distribute requests across a fleet of EC2 instances.
  • Auto Scaling Group (ASG) with EC2 instances: Manage a dynamic fleet of virtual machines.
  • RDS database: Fully managed MySQL database offering.



2015 was an innovative year. AWS launched the Elastic Container Service (ECS) to orchestrate Docker containers running on EC2 instances. RDS Aurora was launched to push the limits of relational databases.

Besides that, AWS launched a new category of services to build Serverless architectures:

  • Lambda functions: Execute code
  • API Gateway (RESTful): Trigger Lambda functions on HTTP requests
  • DynamoDB (2012): NoSQL database



Looking for a new challenge?

  • tecRacer

    Cloud Consultant • AWS DevOps

    tecRacer • Premier AWS Consulting Partner • Germany, Austria, Portugal, and Switzerland
    Infrastructure as Code Container Continuous Deployment

    Senior Lead Full Stack Developer

    DEMICON • AWS Advanced Consulting Partner • Remote (Europe)
    AWS JavaScript/TypeScript Angular React

The Application Load Balancer (ALB) was released in 2016. The ALB is a layer 7 HTTP(S) load balancer with more capabilities than the CLB. Sounds like a minor innovation? It was a big deal for container workloads.



In 2017, the Network Load Balancer was launched. The NLB is a layer 4 TCP load balancer for high throughput (millions of requests per second) and low latency workloads. It uses the same API constructs than the ALB.

The big launch in 2017 was Fargate. Fargate runs your Docker containers orchestrated by ECS. You no longer have to operate the EC2 instances to host the containers.



In 2018, the relational database scalability issue was finally solved for most workloads with RDS Aurora Serverless. RDS Aurora Serverless provides an auto-scaled relational database for you.

Furthermore, App Sync was launched. App Sync can be seen as a replacement for API Gateway. App Sync is based on GraphQL and integrates natively with Lambda, DynamoDB, and other Serverless services.


I’m curious what we will hear from AWS this year.

Become a cloudonaut supporter

Michael Wittig

Michael Wittig ( Email Twitter LinkedIn Mastodon )

We launched the cloudonaut blog in 2015. Since then, we have published 366 articles, 60 podcast episodes, and 58 videos. It's all free and means a lot of work in our spare time. We enjoy sharing our AWS knowledge with you.

Please support us

Have you learned something new by reading, listening, or watching our content? With your help, we can spend enough time to keep publishing great content in the future. Learn more

Amount must be a multriply of 5. E.g, 5, 10, 15.

Thanks to Alan Leech, Alex DeBrie, ANTHONY RAITI, Christopher Hipwell, e9e4e5f0faef, Jason Yorty, Jeff Finley, jhoadley, Johannes Grumböck, Johannes Konings, John Culkin, Jonas Mellquist, Jonathan Deamer, Juraj Martinka, Ken Snyder, Markus Ellers, Oriol Rodriguez, Ross Mohan, Ross Mohan, sam onaga, Satyendra Sharma, Simon Devlin, Thorsten Hoeger, Todd Valentine, Victor Grenu, waldensystems, and all anonymous supporters for your help! We also want to thank all supporters who purchased a cloudonaut t-shirt.