17 - Serverless Solution Architecture Discussions

Serverless Solution Architecture Discussions - Overview

awsserverlesssolutions-architecturesaa-c03index

Study Files

# Topic File Priority
1 Mobile Application MyTodoList 01-Mobile-Application-MyTodoList πŸ”΄ High
2 Serverless Website MyBlog.com 02-Serverless-Website-MyBlog πŸ”΄ High
3 Microservices Architecture 03-Microservices-Architecture 🟑 Medium
4 Software Updates Distribution 04-Software-Updates-Distribution πŸ”΄ High

Section Purpose

This section puts the earlier serverless services together in case-study architectures. Each one starts from requirements and adds services step by step. Nothing is managed by you, you pay per usage, and the services scale automatically.

Architecture Map

MyTodoList (mobile app)
β”œβ”€β”€ API Gateway β†’ Lambda β†’ DynamoDB
β”œβ”€β”€ Cognito (auth, integrated with API Gateway)
β”œβ”€β”€ Cognito temporary credentials β†’ S3 (user's own folder)
└── Caching: DAX (DynamoDB) + API Gateway response cache

MyBlog.com (serverless website)
β”œβ”€β”€ S3 + CloudFront (+ Origin Access Control)
β”œβ”€β”€ API Gateway β†’ Lambda β†’ DynamoDB (+ DAX, Global Tables)
β”œβ”€β”€ DynamoDB Streams β†’ Lambda β†’ SES (welcome email)
└── S3 event β†’ Lambda β†’ thumbnail (also SQS / SNS)

Microservices
β”œβ”€β”€ Synchronous: API Gateway, Load Balancer (HTTPS)
└── Asynchronous: SQS, Kinesis, SNS, Lambda triggers, S3

Software updates distribution
└── CloudFront in front of ELB + ASG + EFS (no re-architecture)

Key Services Covered

Service Role in Architecture
API Gateway REST HTTPS endpoints, Cognito integration, response caching
Lambda Serverless compute behind the API, S3 and DynamoDB Streams triggers
DynamoDB Serverless database, DAX cache, Global Tables, Streams
Cognito Authentication and temporary AWS credentials
S3 User files, static website content, event triggers
CloudFront Global CDN, edge caching, OAC to protect S3
SES Serverless email sending
SQS / SNS / Kinesis Asynchronous microservice communication
ECS, ELB, ASG, EFS Non-serverless microservice and software-update pieces

Key Exam Topics

Exam focus
  • Never store AWS user credentials on mobile clients. Use Cognito to get temporary credentials for S3.
  • DAX caches DynamoDB reads: better performance and lower cost (fewer RCUs).
  • API Gateway can cache responses for static answers; Cognito is integrated directly with API Gateway.
  • CloudFront + OAC + S3 bucket policy keeps the bucket reachable only through CloudFront.
  • DynamoDB Global Tables for global latency, still serverless. Aurora Global Database is not serverless here (provisioned Aurora).
  • DynamoDB Streams β†’ Lambda (IAM role) β†’ SES for a serverless welcome email.
  • S3 can trigger Lambda, SQS or SNS.
  • Microservices: synchronous (API Gateway, Load Balancer) vs asynchronous (SQS, Kinesis, SNS, Lambda triggers, S3).
  • CloudFront is the easy way to make a mostly static existing app cheaper and more scalable without re-architecting.

Check yourself

Quiz