SlideShare a Scribd company logo
Serverless Microservices
Real life story of a Web App that uses AWS Lambda
Eugene Istrati, Technology Partner
eugene@mitocgroup.com
www.mitocgroup.com
© 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Eugen Istrati, Partner @ Mitoc Group
Microservices Architecture
for Digital Platforms with AWS Lambda,
Amazon CloudFront, and Amazon DynamoDB
eugen@mitocgroup.com
October 2015
ARC201
About
Eugene Istrati
• eugene@mitocgroup.com
• Partner @ Mitoc Group Inc
• 15+ years in IT; 7+ years on AWS
• AWS Certified Solutions Architect
(re-certified at re:Invent 2015)
• Companies: Hearst, Amazon,
GrubHub, Tenaris (Europe)
Mitoc Group Inc
• www.mitocgroup.com
• Web Development Studio
• AWS Technology Partner
• Focusing on enterprise
applications and platforms
• Working with customers from
media and entertainment industry
Agenda
• Reference Architecture
• Serverless Microservices
• Demo: todo.deep.mg
• Q&A
Demo: todo.deep.mg
• Inspired from open source
• www.todomvc.com
• Go to the GitHub repository
• github.com/MitocGroup/deep
-microservices-todo-app
• Follow the steps from Getting
Started to build and deploy
• todo.deep.com
Agenda
• Reference Architecture
• Serverless Microservices
• Demo: todo.deep.mg
• Q&A
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
• Reduced operational complexity
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
• Reduced operational complexity
• Requires DevOps with experience
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
• Reduced operational complexity
• Requires DevOps with experience
• Flexible choice of technology
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
• Reduced operational complexity
• Requires DevOps with experience
• Flexible choice of technology
• Requires devs with rich skill set
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
• Reduced operational complexity
• Requires DevOps with experience
• Flexible choice of technology
• Requires devs with rich skill set
• Cost-effective
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
• Reduced operational complexity
• Requires DevOps with experience
• Flexible choice of technology
• Requires devs with rich skill set
• Cost-effective
• Over-provisioning and over-paying
Reference Architecture
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
• Scales in minutes
• Huge challenge for breaking
news, viral content, or attacks
• Reduced operational complexity
• Requires DevOps with experience
• Flexible choice of technology
• Requires devs with rich skill set
• Cost-effective
• Over-provisioning and over-paying
AWS re:Invent 2014
Note: Credits and thanks are listed at the end of the presentation
AWS Summit NY 2015
Note: Credits and thanks are listed at the end of the presentation
Reference Architecture … Reinvented
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
S3 bucket
CloudFront
distribution
Web Tier
Cognito
Identity
DB Tier
SQS DynamoDB
LambdaCloudFront
logs
API Gateway
www.example.com
static.example.com
App Tier
AWS Region
RDS Aurora
Agenda
• Reference Architecture
• Serverless Microservices
• Demo: todo.deep.mg
• Q&A
What does “serverless” mean?
Not involving a server; composed only of clients.
http://www.wordsense.eu/serverless
Serverless doesn’t mean servers are no longer
involved. It simply means that developers no
longer have to think "that much" about them.
Computing resources get used as services
without having to manage around physical
capacities or limits.
https://www.quora.com/What-is-Serverless-Computing
Serverless vs. Reference
Availability Zone A Availability Zone B
Auto Scaling Group
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
app
servers
app
servers
S3 bucket
CloudFront
distribution
Web Tier
Cognito
Identity
DB Tier
SQS DynamoDB
LambdaCloudFront
logs
API Gateway
www.example.com
static.example.com
App Tier
AWS Region
RDS Aurora
vs
Serverless Architecture – Web Tier
S3 bucket
CloudFront
distribution
Web Tier
Cognito
Identity
CloudFront
logs
www.example.com
static.example.com
Availability Zone A Availability Zone B
Auto Scaling Group
www.example.com
static.example.com
web
servers
web
servers
Serverless Architecture – Web Tier
S3 bucket
CloudFront
distribution
Web Tier
Cognito
Identity
CloudFront
logs
www.example.com
static.example.com
• Static Assets
• Same as in reference architecture
• css, js, docs, images, videos + html
• Dynamic Functionality
• Use JS framework (e.g. Angular)
• SEO-friendly (Custom Error
Response + HTML5 History API)
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
Serverless Architecture – Web Tier
S3 bucket
CloudFront
distribution
Web Tier
Cognito
Identity
CloudFront
logs
www.example.com
static.example.com
• Static Assets
• Same as in reference architecture
• css, js, docs, images, videos + html
• Dynamic Functionality
• Use JS framework (e.g. Angular)
• SEO-friendly (Custom Error
Response + HTML5 History API)
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
Serverless Architecture – Web Tier
S3 bucket
CloudFront
distribution
Web Tier
Cognito
Identity
CloudFront
logs
www.example.com
static.example.com
• Static Assets
• Same as in reference architecture
• css, js, docs, images, videos + html
• Dynamic Functionality
• Use JS framework (e.g. Angular)
• SEO-friendly (Custom Error
Response + HTML5 History API)
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
Serverless Architecture – App Tier
Cognito
Identity
SQS
Lambda
API Gateway
App Tier
Availability Zone A Availability Zone B
Auto Scaling Group
app
servers
app
servers
Cognito
Identity
SQS
Lambda
API Gateway
App Tier
• Accelerated Backend
• Write node.js functions and load
into Lambda
• Power up Lambda with RESTful
endpoints on API Gateway
• Cache, throttle, meter, version,
etc.
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
Serverless Architecture – App Tier
• Accelerated Backend
• Write node.js functions and load
into Lambda
• Power up Lambda with RESTful
endpoints on API Gateway
• Cache, throttle, meter, version,
etc.
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
Serverless Architecture – App Tier
Cognito
Identity
SQS
Lambda
API Gateway
App Tier
Availability Zone A Availability Zone B
Serverless Architecture – DB Tier
DB Tier
SQS DynamoDB
RDS Aurora
DB Tier
SQS DynamoDB
RDS Aurora
Serverless Architecture – DB Tier
• First choice – DynamoDB + SQS
• Schema-free
• Scale only reads and writes
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
• Next choice – RDS Aurora
• Relational
• MySQL-like approach, but 5x better
Serverless Architecture – DB Tier
• First choice – DynamoDB + SQS
• Schema-free
• Scale only reads and writes
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
• Next choice – RDS Aurora
• Relational
• MySQL-like approach, but 5x better
DB Tier
SQS DynamoDB
RDS Aurora
Serverless Architecture – DB Tier
• First choice – DynamoDB + SQS
• Schema-free
• Scale only reads and writes
• Completely Serverless
• Pre-scaled
• Low-cost
• Low-maintenance
• Next choice – RDS Aurora
• Relational
• MySQL-like approach, but 5x better
DB Tier
SQS DynamoDB
RDS Aurora
Lessons Learned
• Serverless approach is challengingly awesome
• Frontend is restricted to JS (and JS Frameworks)
• Backend is restricted to Python, Java or JS (for now)
• SOA and APIs are required by design
Lessons Learned
• Serverless approach is challengingly awesome
• Frontend is restricted to JS (and JS Frameworks)
• Backend is restricted to Python, Java or JS (for now)
• SOA and APIs are required by design
• Services must be as small as possible
• AWS Lambda constrains
• Browser limitations (on mobile devices)
Lessons Learned
• Serverless approach is challengingly awesome
• Frontend is restricted to JS (and JS Frameworks)
• Backend is restricted to Python, Java or JS (for now)
• SOA and APIs are required by design
• Services must be as small as possible => microservices
• AWS Lambda constrains
• Browser limitations (on mobile devices)
Google Trends: Microservices
What does “microservices” mean?
In computing, microservices is a software
architecture style in which complex applications
are composed of small, independent processes
communicating with each other using language-
agnostic APIs. These services are small, highly
decoupled and focus on doing a small task,
facilitating a modular approach to system-
building.
https://en.wikipedia.org/wiki/Microservices
Agenda
• Reference Architecture
• Serverless Microservices
• Demo: todo.deep.mg
• Q&A
Demo: todo.deep.mg
• Inspired from open source
• www.todomvc.com
• Go to the GitHub repository
• github.com/MitocGroup/deep
-microservices-todo-app
• Follow the steps from Getting
Started to build and deploy
• todo.deep.mg
Agenda
• Reference Architecture
• Serverless Microservices
• Demo: todo.deep.mg
• Q&A
Q&A (+ next steps)
github.com/MitocGroup blog.mitocgroup.com
beta@deep.mg
www.deep.mg
Thanks:
DEEP Framework
https://github.com/MitocGroup/deep-framework
“DEEP Framework is a serverless web framework, core
component of the Platform-as-a-Service that abstracts web
apps and web services from specific cloud providers. This
framework enables developers build cloud-native applications
or platforms using microservices architecture in a completely
serverless approach”
Credits and Thanks
• Slide 19: AWS re:Invent 2014
• https://venturebeat.com/wp-content/uploads/2014/11/aws-reinvent-lambda.png
• Slide 20: AWS Summit NY 2015
• https://d0.awsstatic.com/events/aws-hosted-events/2015/AWS-Global-Summit-Series/new-york/press-room/introducing-amazon-api-
gateway.jpg

More Related Content

PPTX
Building Scalable Web Applications using Microservices Architecture and Serve...
PPTX
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
PPTX
Microservices Architecture for Content Management Systems using AWS Lambda an...
PPTX
Build Web Applications using Microservices on Node.js and Serverless AWS
PDF
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
PPTX
How Serverless Computing Enables Microservices and Micropayment
PPTX
Microservices Architecture for Digital Platforms using Serverless AWS
PPTX
How Serverless Computing Enables Microservices and Micropayment
Building Scalable Web Applications using Microservices Architecture and Serve...
Serverless Microservices - Real life story of a Web App that uses AngularJS, ...
Microservices Architecture for Content Management Systems using AWS Lambda an...
Build Web Applications using Microservices on Node.js and Serverless AWS
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
How Serverless Computing Enables Microservices and Micropayment
Microservices Architecture for Digital Platforms using Serverless AWS
How Serverless Computing Enables Microservices and Micropayment

What's hot (10)

PPTX
Building Scalable Web Applications using Microservices Architecture and NodeJ...
DOCX
Kumuda_Krishnamachari
PPTX
Microservices Architecture for Web Applications using Serverless Computing wi...
PPTX
Microservices Architecture for MEAN Applications using Serverless AWS
PPTX
ARC201 Microservices Architecture @ AWS re:Invent 2015
PDF
Microservices and Serverless for Mega Startups - DevOps IL Meetup
PPTX
Microservices Architecture for Web Applications using Amazon AWS Cloud
PPTX
Devops on AWS
PPTX
AWS Lambda support for AWS X-Ray
PPTX
Microservices Architecture for Web Applications using AWS Lambda and more
Building Scalable Web Applications using Microservices Architecture and NodeJ...
Kumuda_Krishnamachari
Microservices Architecture for Web Applications using Serverless Computing wi...
Microservices Architecture for MEAN Applications using Serverless AWS
ARC201 Microservices Architecture @ AWS re:Invent 2015
Microservices and Serverless for Mega Startups - DevOps IL Meetup
Microservices Architecture for Web Applications using Amazon AWS Cloud
Devops on AWS
AWS Lambda support for AWS X-Ray
Microservices Architecture for Web Applications using AWS Lambda and more
Ad

Viewers also liked (15)

PDF
Sql or no sql, that is the question
PPTX
Undergraduate Independent Study Spring 2015- Poster presentation
PDF
React.js + Flux入門 #scripty02
PDF
GDC 2016: A Brief Introduction to the Current Market Landscape
PDF
`redux`と`flux`を比べてみたときの個人的な感想
PDF
AWS re:Invent 2015に初参戦→気づいたらOSS二つ作ってた
PDF
Scalable Gaming with AWS - GDC 2014
PDF
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
PPTX
AWS Startup Tech Meetup #008 発表資料
PDF
Lessons Learned from Migrating Legacy Enterprise Applications to Microservices
PDF
ラクしていい感じのスライドを作るための2つのポイント
PPTX
REST and Microservices
PDF
Serverless AWS構成でセキュアなSPAを目指す
PDF
SEO対策したサイトをAPI Gateway+Lambdaで作った話
PDF
RESTful API Design, Second Edition
Sql or no sql, that is the question
Undergraduate Independent Study Spring 2015- Poster presentation
React.js + Flux入門 #scripty02
GDC 2016: A Brief Introduction to the Current Market Landscape
`redux`と`flux`を比べてみたときの個人的な感想
AWS re:Invent 2015に初参戦→気づいたらOSS二つ作ってた
Scalable Gaming with AWS - GDC 2014
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
AWS Startup Tech Meetup #008 発表資料
Lessons Learned from Migrating Legacy Enterprise Applications to Microservices
ラクしていい感じのスライドを作るための2つのポイント
REST and Microservices
Serverless AWS構成でセキュアなSPAを目指す
SEO対策したサイトをAPI Gateway+Lambdaで作った話
RESTful API Design, Second Edition
Ad

Similar to Serverless Microservices - Real life story of a Web App that uses AWS Lambda (9)

PPTX
Microservices Architecture for Content Management Systems using AWS Lambda an...
PPTX
AWS Startup Day Bangalore: Being Well-Architected in the Cloud
PPTX
Journey Towards Scaling Your Application to Million Users
PDF
Dean Bryen: Scaling The Platform For Your Startup
PPTX
Being Well Architected in the Cloud (Updated)
PDF
Introducing to serverless computing and AWS lambda - Israel Clouds Meetup
PDF
Serverless Culture
PPTX
Journey Towards Scaling Your Application to Million Users
PDF
Microservices and serverless for MegaStartups - DLD TLV 2017
Microservices Architecture for Content Management Systems using AWS Lambda an...
AWS Startup Day Bangalore: Being Well-Architected in the Cloud
Journey Towards Scaling Your Application to Million Users
Dean Bryen: Scaling The Platform For Your Startup
Being Well Architected in the Cloud (Updated)
Introducing to serverless computing and AWS lambda - Israel Clouds Meetup
Serverless Culture
Journey Towards Scaling Your Application to Million Users
Microservices and serverless for MegaStartups - DLD TLV 2017

Recently uploaded (20)

PPTX
assetexplorer- product-overview - presentation
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Transform Your Business with a Software ERP System
PDF
System and Network Administraation Chapter 3
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
medical staffing services at VALiNTRY
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPT
Introduction Database Management System for Course Database
assetexplorer- product-overview - presentation
PTS Company Brochure 2025 (1).pdf.......
Transform Your Business with a Software ERP System
System and Network Administraation Chapter 3
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Digital Systems & Binary Numbers (comprehensive )
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
medical staffing services at VALiNTRY
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Navsoft: AI-Powered Business Solutions & Custom Software Development
Odoo Companies in India – Driving Business Transformation.pdf
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Upgrade and Innovation Strategies for SAP ERP Customers
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
wealthsignaloriginal-com-DS-text-... (1).pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Introduction Database Management System for Course Database

Serverless Microservices - Real life story of a Web App that uses AWS Lambda

  • 1. Serverless Microservices Real life story of a Web App that uses AWS Lambda Eugene Istrati, Technology Partner eugene@mitocgroup.com www.mitocgroup.com
  • 2. © 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Eugen Istrati, Partner @ Mitoc Group Microservices Architecture for Digital Platforms with AWS Lambda, Amazon CloudFront, and Amazon DynamoDB eugen@mitocgroup.com October 2015 ARC201
  • 3. About Eugene Istrati • eugene@mitocgroup.com • Partner @ Mitoc Group Inc • 15+ years in IT; 7+ years on AWS • AWS Certified Solutions Architect (re-certified at re:Invent 2015) • Companies: Hearst, Amazon, GrubHub, Tenaris (Europe) Mitoc Group Inc • www.mitocgroup.com • Web Development Studio • AWS Technology Partner • Focusing on enterprise applications and platforms • Working with customers from media and entertainment industry
  • 4. Agenda • Reference Architecture • Serverless Microservices • Demo: todo.deep.mg • Q&A
  • 5. Demo: todo.deep.mg • Inspired from open source • www.todomvc.com • Go to the GitHub repository • github.com/MitocGroup/deep -microservices-todo-app • Follow the steps from Getting Started to build and deploy • todo.deep.com
  • 6. Agenda • Reference Architecture • Serverless Microservices • Demo: todo.deep.mg • Q&A
  • 7. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes
  • 8. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks
  • 9. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks • Reduced operational complexity
  • 10. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks • Reduced operational complexity • Requires DevOps with experience
  • 11. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks • Reduced operational complexity • Requires DevOps with experience • Flexible choice of technology
  • 12. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks • Reduced operational complexity • Requires DevOps with experience • Flexible choice of technology • Requires devs with rich skill set
  • 13. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks • Reduced operational complexity • Requires DevOps with experience • Flexible choice of technology • Requires devs with rich skill set • Cost-effective
  • 14. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks • Reduced operational complexity • Requires DevOps with experience • Flexible choice of technology • Requires devs with rich skill set • Cost-effective • Over-provisioning and over-paying
  • 15. Reference Architecture Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers • Scales in minutes • Huge challenge for breaking news, viral content, or attacks • Reduced operational complexity • Requires DevOps with experience • Flexible choice of technology • Requires devs with rich skill set • Cost-effective • Over-provisioning and over-paying
  • 16. AWS re:Invent 2014 Note: Credits and thanks are listed at the end of the presentation
  • 17. AWS Summit NY 2015 Note: Credits and thanks are listed at the end of the presentation
  • 18. Reference Architecture … Reinvented Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers S3 bucket CloudFront distribution Web Tier Cognito Identity DB Tier SQS DynamoDB LambdaCloudFront logs API Gateway www.example.com static.example.com App Tier AWS Region RDS Aurora
  • 19. Agenda • Reference Architecture • Serverless Microservices • Demo: todo.deep.mg • Q&A
  • 20. What does “serverless” mean? Not involving a server; composed only of clients. http://www.wordsense.eu/serverless Serverless doesn’t mean servers are no longer involved. It simply means that developers no longer have to think "that much" about them. Computing resources get used as services without having to manage around physical capacities or limits. https://www.quora.com/What-is-Serverless-Computing
  • 21. Serverless vs. Reference Availability Zone A Availability Zone B Auto Scaling Group Auto Scaling Group www.example.com static.example.com web servers web servers app servers app servers S3 bucket CloudFront distribution Web Tier Cognito Identity DB Tier SQS DynamoDB LambdaCloudFront logs API Gateway www.example.com static.example.com App Tier AWS Region RDS Aurora vs
  • 22. Serverless Architecture – Web Tier S3 bucket CloudFront distribution Web Tier Cognito Identity CloudFront logs www.example.com static.example.com Availability Zone A Availability Zone B Auto Scaling Group www.example.com static.example.com web servers web servers
  • 23. Serverless Architecture – Web Tier S3 bucket CloudFront distribution Web Tier Cognito Identity CloudFront logs www.example.com static.example.com • Static Assets • Same as in reference architecture • css, js, docs, images, videos + html • Dynamic Functionality • Use JS framework (e.g. Angular) • SEO-friendly (Custom Error Response + HTML5 History API) • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance
  • 24. Serverless Architecture – Web Tier S3 bucket CloudFront distribution Web Tier Cognito Identity CloudFront logs www.example.com static.example.com • Static Assets • Same as in reference architecture • css, js, docs, images, videos + html • Dynamic Functionality • Use JS framework (e.g. Angular) • SEO-friendly (Custom Error Response + HTML5 History API) • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance
  • 25. Serverless Architecture – Web Tier S3 bucket CloudFront distribution Web Tier Cognito Identity CloudFront logs www.example.com static.example.com • Static Assets • Same as in reference architecture • css, js, docs, images, videos + html • Dynamic Functionality • Use JS framework (e.g. Angular) • SEO-friendly (Custom Error Response + HTML5 History API) • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance
  • 26. Serverless Architecture – App Tier Cognito Identity SQS Lambda API Gateway App Tier Availability Zone A Availability Zone B Auto Scaling Group app servers app servers
  • 27. Cognito Identity SQS Lambda API Gateway App Tier • Accelerated Backend • Write node.js functions and load into Lambda • Power up Lambda with RESTful endpoints on API Gateway • Cache, throttle, meter, version, etc. • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance Serverless Architecture – App Tier
  • 28. • Accelerated Backend • Write node.js functions and load into Lambda • Power up Lambda with RESTful endpoints on API Gateway • Cache, throttle, meter, version, etc. • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance Serverless Architecture – App Tier Cognito Identity SQS Lambda API Gateway App Tier
  • 29. Availability Zone A Availability Zone B Serverless Architecture – DB Tier DB Tier SQS DynamoDB RDS Aurora
  • 30. DB Tier SQS DynamoDB RDS Aurora Serverless Architecture – DB Tier • First choice – DynamoDB + SQS • Schema-free • Scale only reads and writes • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance • Next choice – RDS Aurora • Relational • MySQL-like approach, but 5x better
  • 31. Serverless Architecture – DB Tier • First choice – DynamoDB + SQS • Schema-free • Scale only reads and writes • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance • Next choice – RDS Aurora • Relational • MySQL-like approach, but 5x better DB Tier SQS DynamoDB RDS Aurora
  • 32. Serverless Architecture – DB Tier • First choice – DynamoDB + SQS • Schema-free • Scale only reads and writes • Completely Serverless • Pre-scaled • Low-cost • Low-maintenance • Next choice – RDS Aurora • Relational • MySQL-like approach, but 5x better DB Tier SQS DynamoDB RDS Aurora
  • 33. Lessons Learned • Serverless approach is challengingly awesome • Frontend is restricted to JS (and JS Frameworks) • Backend is restricted to Python, Java or JS (for now) • SOA and APIs are required by design
  • 34. Lessons Learned • Serverless approach is challengingly awesome • Frontend is restricted to JS (and JS Frameworks) • Backend is restricted to Python, Java or JS (for now) • SOA and APIs are required by design • Services must be as small as possible • AWS Lambda constrains • Browser limitations (on mobile devices)
  • 35. Lessons Learned • Serverless approach is challengingly awesome • Frontend is restricted to JS (and JS Frameworks) • Backend is restricted to Python, Java or JS (for now) • SOA and APIs are required by design • Services must be as small as possible => microservices • AWS Lambda constrains • Browser limitations (on mobile devices)
  • 37. What does “microservices” mean? In computing, microservices is a software architecture style in which complex applications are composed of small, independent processes communicating with each other using language- agnostic APIs. These services are small, highly decoupled and focus on doing a small task, facilitating a modular approach to system- building. https://en.wikipedia.org/wiki/Microservices
  • 38. Agenda • Reference Architecture • Serverless Microservices • Demo: todo.deep.mg • Q&A
  • 39. Demo: todo.deep.mg • Inspired from open source • www.todomvc.com • Go to the GitHub repository • github.com/MitocGroup/deep -microservices-todo-app • Follow the steps from Getting Started to build and deploy • todo.deep.mg
  • 40. Agenda • Reference Architecture • Serverless Microservices • Demo: todo.deep.mg • Q&A
  • 41. Q&A (+ next steps) github.com/MitocGroup blog.mitocgroup.com beta@deep.mg www.deep.mg Thanks:
  • 42. DEEP Framework https://github.com/MitocGroup/deep-framework “DEEP Framework is a serverless web framework, core component of the Platform-as-a-Service that abstracts web apps and web services from specific cloud providers. This framework enables developers build cloud-native applications or platforms using microservices architecture in a completely serverless approach”
  • 43. Credits and Thanks • Slide 19: AWS re:Invent 2014 • https://venturebeat.com/wp-content/uploads/2014/11/aws-reinvent-lambda.png • Slide 20: AWS Summit NY 2015 • https://d0.awsstatic.com/events/aws-hosted-events/2015/AWS-Global-Summit-Series/new-york/press-room/introducing-amazon-api- gateway.jpg