SlideShare a Scribd company logo
WEB SUMMIT 
DUBLIN 2014 
#AWS #WEBSUMMIT 
Scaling on AWS for the 
First 10 Million Users 
Ian Massingham — Technical Evangelist 
ianmas@amazon.com 
@IanMmmm 
STARTING AT 11:00
An Introduction to Scaling on AWS
An awful lot of things to read 
Not where we want to start 
EC2 Auto Scaling is one tool, not 
the single thing that ‘fixes’ 
everything or enables you to scale
SO WHAT DO WE NEED FIRST?
SOME BASICS
2004 2014 
$7B+ retail business 
8,000+ employees 
A whole lot of servers 
Every day, AWS adds 
enough server 
capacity to power that 
entire $7B enterprise
Foundation 
Services 
Infrastructure 
Collaboration and Sharing 
Storage 
(Object, Block and Archive) Security & Networking 
Regions Availability Zones 
Access Control 
Platform 
Services 
Databases 
Relational 
NoSQL 
Caching 
Analytics 
Hadoop 
Real-time 
Data 
warehouse 
App Services 
Queuing 
Orchestration 
App streaming 
Transcoding 
Email 
Search 
Deployment & Management 
Containers 
Dev/ops Tools 
Resource 
Templates 
Mobile Services 
Identity 
Sync 
Mobile 
Analytics 
Notifications 
Enterprise 
Applications Virtual Desktops 
Data 
Workflows 
Usage 
Tracking 
Monitoring 
and Logs 
Compute 
(VMs, Auto-scaling and Load Balancing) 
CDN and Points of Presence
Startups on AWS 
http://aws.amazon.com/solutions/case-studies/
DAY ONE, USER ONE. PROBABLY YOU! 
• A single EC2 instance 
• With a full stack on this host 
• Web app 
• Database 
• Management 
• A single Elastic IP address 
• Amazon Route 53 for DNS 
Elastic IP 
address 
EC2 
instance 
Amazon 
Route 53 
User
WE’RE GOING TO NEED A BIGGER BOX! 
• Simplest approach to scaling 
• You can now leverage PIOPs 
• High I/O instances 
• High memory instances 
• High CPU instances 
• High storage instances 
• Easy to change instance sizes 
• Will hit an endpoint eventually
WE’RE GOING TO NEED A BIGGER BOX! 
• We could potentially get to a few 
hundred to a few thousand 
depending on application 
complexity and traffic 
• No failover 
• No redundancy 
• Too many eggs in one basket 
Elastic IP 
address 
EC2 
instance 
Amazon 
Route 53 
User
DAY TWO, USER >1 
Web 
instance 
Database 
instance 
Elastic IP 
address 
Amazon 
Route 53 
User 
• Separate out the functions on our 
single host onto more than one: 
• Web 
• Database 
• Make use of a database service
Microsoft SQL, Oracle, 
MySQL or PostgresSQL 
managed service 
Flexible licensing: BYOL 
or Included 
Self-Managed Fully-Managed 
Massively parallel, 
petabyte scale, data 
warehouse service 
Fast, powerful & 
easy to scale 
Managed NoSQL database 
service using SSD storage 
Seamless scalability & zero 
administration 
Database server 
on Amazon EC2 
Amazon RDS 
Amazon DynamoDB 
Amazon Redshift 
Your chosen database 
running on Amazon EC2 
Database Options
Building Blocks for Scaling on AWS
HOW DO I DETERMINE WHICH DB 
TECHNOLOGY I NEED?
Why start with SQL? 
• Established and well-worn technology 
• Lots of existing code, communities, books & tools 
• You aren’t going to break SQL DBs in your first 10 million users. No 
really, you won’t* 
• Clear patterns to scalability 
* Unless you are manipulating data at MASSIVE scale; even then, SQL will have a place in your stack
Why might you need to use a NoSQL DB? 
• Super low latency applications 
• Metadata driven datasets 
• Highly non-relational data 
• Need schema-less data constructs* 
• Massive amounts of data (again, in the TB range) 
• Rapid ingest of data ( thousands of records/sec ) 
*Need != “it is easier to do dev without schemas”
IF YOU DO NEED NOSQL, 
CONSIDER AMAZON DYNAMODB 
• Managed, provisioned throughput NoSQL database 
• Fast, predictable performance 
• Fully distributed, fault tolerant architecture
Elastic IP 
address 
Web 
instance 
Amazon 
Route 53 
RDS DB 
instance 
User 
USER >100 
• First, let’s separate out our single 
host into more than one: 
• Web 
• Database 
• Use Amazon RDS to make your 
life easier
USER >1000 
Web 
instance 
Amazon RDS DB instance 
Web 
instance 
Amazon RDS DB instance 
Active (Multi-AZ) 
Availability Zone Availability Zone 
Standby (Multi-AZ) 
Elastic Load 
Balancing 
Amazon 
Route 53 
User 
• Next, let’s address the lack of 
failover and redundancy issues: 
• Elastic Load Balancing 
• Another web instance 
• In another Availability Zone 
• Enable Amazon RDS Multi-AZ
USER 10,000 to 100,000s 
RDS DB Instance 
Active (Multi-AZ) 
RDS DB Instance 
Standby (Multi-AZ) 
Elastic Load 
Balancing 
RDS DB Instance 
Read Replica 
Availability Zone Availability Zone 
RDS DB Instance 
Read Replica 
RDS DB Instance 
Read Replica 
RDS DB Instance 
Read Replica 
Web 
instance 
Web 
instance 
Web 
instance 
Web 
instance 
Web 
instance 
Web 
instance 
Web 
instance 
Web 
instance 
Amazon 
Route 53 
User
Shift Some Load Around 
Elastic Load 
Balancing 
Web 
instance 
RDS DB Instance 
Active (Multi-AZ) 
Availability Zone 
Amazon 
CloudFront 
Amazon S3 
Amazon 
Route 53 
User 
ElastiCache 
Amazon 
Dynamo DB 
• Think components and services: 
• Move static content from the 
web instance to Amazon S3 
and Amazon CloudFront 
• Move session/state and DB 
caching to Amazon ElastiCache 
or Amazon Dynamo DB
NOW THAT OUR WEB TIER IS 
MUCH MORE LIGHTWEIGHT: 
AUTOSCALING!
AMAZON EC2 AUTO SCALING 
Automatic resizing of compute 
clusters based on demand metrics 
Trigger auto-scaling policy 
Amazon 
CloudWatch 
Feature Details 
Control Define minimum and maximum 
instance pool sizes and when scaling 
and cool down occurs 
Integration Use metrics gathered by CloudWatch 
to drive scaling (including custom 
metrics) 
Instance Types Use Auto Scaling with On-Demand 
and Spot Instances
NOVEMBER TRAFFIC TO AMAZON.COM 
AUTO SCALING LETS YOU DO THIS 
76% of traditionally provisioned capacity 
Traditional provisioning level 
24% of traditionally provisioned capacity
Web 
instance 
Availability Zone 
Amazon 
Route 53 
User 
Amazon S3 
Amazon 
CloudFront 
Web 
instance 
Availability Zone 
Elastic Load 
Balancing 
Amazon 
RDS DB Instance DynamoDB 
Read Replica 
Web 
instance 
Web 
instance 
ElastiCache RDS DB Instance 
Read Replica 
Web 
instance 
Web 
instance 
RDS DB Instance ElastiCache 
Standby (Multi-AZ) 
RDS DB Instance 
Active (Multi-AZ) 
USER 500,000+
GOING BEYOND 500,000 USERS
GOING BEYOND 500,000 USERS 
• Monitoring, metrics and logging 
• Listen and respond to customer feedback as well as your metrics 
• Optimise each service/component 
• Implement a Service Orientated Architecture with loose coupling 
• Load balance between tiers
RDS DB Instance 
Active (Multi-AZ) 
Availability Zone 
Elastic Load 
Balancing 
RDS DB Instance 
Read Replica 
RDS DB Instance 
Read Replica 
Web 
instance 
Web 
instance 
Web 
instance 
Web 
instance 
Amazon 
Route 53 
User 
Amazon S3 
Amazon 
CloudFront 
Amazon SQS 
Amazon 
DynamoDB 
ElastiCache 
Worker 
instance 
Worker 
instance 
Amazon 
CloudWatch 
Internal app 
instance 
Internal app 
instance 
Amazon SES 
USER 1 MILLION+
WANT TO LEARN MORE? 
COME TO OUR ARCHITECTURE 
ASK US ANYTHING 
TODAY AT 16:00
WEB SUMMIT 
DUBLIN 2014 
#AWS #WEBSUMMIT 
DON’T FORGET YOUR CREDITS 
Ian Massingham — Technical Evangelist 
@IanMmmm 
AWS Global News and Service Launches @AWScloud 
AWS UK & Ireland News, Events & Webinars @AWS_UKI

More Related Content

More from Ian Massingham (20)

Some thoughts on measuring the impact of developer relations
Some thoughts on measuring the impact of developer relationsSome thoughts on measuring the impact of developer relations
Some thoughts on measuring the impact of developer relations
Ian Massingham
 
Leeds IoT Meetup - Nov 2017
Leeds IoT Meetup - Nov 2017Leeds IoT Meetup - Nov 2017
Leeds IoT Meetup - Nov 2017
Ian Massingham
 
What's New & What's Next from AWS?
What's New & What's Next from AWS?What's New & What's Next from AWS?
What's New & What's Next from AWS?
Ian Massingham
 
DevTalks Romania - Getting Started with AWS Lambda & the Serverless Cloud
DevTalks Romania - Getting Started with AWS Lambda & the Serverless CloudDevTalks Romania - Getting Started with AWS Lambda & the Serverless Cloud
DevTalks Romania - Getting Started with AWS Lambda & the Serverless Cloud
Ian Massingham
 
Getting started with AWS Lambda and the Serverless Cloud
Getting started with AWS Lambda and the Serverless CloudGetting started with AWS Lambda and the Serverless Cloud
Getting started with AWS Lambda and the Serverless Cloud
Ian Massingham
 
AWS AWSome Day - Getting Started Best Practices
AWS AWSome Day - Getting Started Best PracticesAWS AWSome Day - Getting Started Best Practices
AWS AWSome Day - Getting Started Best Practices
Ian Massingham
 
AWS IoT Workshop Keynote
AWS IoT Workshop KeynoteAWS IoT Workshop Keynote
AWS IoT Workshop Keynote
Ian Massingham
 
Security Best Practices: AWS AWSome Day Management Track
Security Best Practices: AWS AWSome Day Management TrackSecurity Best Practices: AWS AWSome Day Management Track
Security Best Practices: AWS AWSome Day Management Track
Ian Massingham
 
AWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:CapAWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:Cap
Ian Massingham
 
AWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapAWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:Cap
Ian Massingham
 
Getting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless CloudGetting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless Cloud
Ian Massingham
 
Building Better IoT Applications without Servers
Building Better IoT Applications without ServersBuilding Better IoT Applications without Servers
Building Better IoT Applications without Servers
Ian Massingham
 
AWS AWSome Day Roadshow
AWS AWSome Day RoadshowAWS AWSome Day Roadshow
AWS AWSome Day Roadshow
Ian Massingham
 
AWS AWSome Day Roadshow Intro
AWS AWSome Day Roadshow IntroAWS AWSome Day Roadshow Intro
AWS AWSome Day Roadshow Intro
Ian Massingham
 
Hashiconf AWS Lambda Breakout
Hashiconf AWS Lambda BreakoutHashiconf AWS Lambda Breakout
Hashiconf AWS Lambda Breakout
Ian Massingham
 
Getting started with AWS IoT on Raspberry Pi
Getting started with AWS IoT on Raspberry PiGetting started with AWS IoT on Raspberry Pi
Getting started with AWS IoT on Raspberry Pi
Ian Massingham
 
AWSome Day Dublin Intro & Closing Slides
AWSome Day Dublin Intro & Closing Slides AWSome Day Dublin Intro & Closing Slides
AWSome Day Dublin Intro & Closing Slides
Ian Massingham
 
GOTO Stockholm - AWS Lambda - Logic in the cloud without a back-end
GOTO Stockholm - AWS Lambda - Logic in the cloud without a back-endGOTO Stockholm - AWS Lambda - Logic in the cloud without a back-end
GOTO Stockholm - AWS Lambda - Logic in the cloud without a back-end
Ian Massingham
 
What's New at AWS Update for AWS User Groups
What's New at AWS Update for AWS User Groups What's New at AWS Update for AWS User Groups
What's New at AWS Update for AWS User Groups
Ian Massingham
 
Advanced Security Masterclass - Tel Aviv Loft
Advanced Security Masterclass - Tel Aviv LoftAdvanced Security Masterclass - Tel Aviv Loft
Advanced Security Masterclass - Tel Aviv Loft
Ian Massingham
 
Some thoughts on measuring the impact of developer relations
Some thoughts on measuring the impact of developer relationsSome thoughts on measuring the impact of developer relations
Some thoughts on measuring the impact of developer relations
Ian Massingham
 
Leeds IoT Meetup - Nov 2017
Leeds IoT Meetup - Nov 2017Leeds IoT Meetup - Nov 2017
Leeds IoT Meetup - Nov 2017
Ian Massingham
 
What's New & What's Next from AWS?
What's New & What's Next from AWS?What's New & What's Next from AWS?
What's New & What's Next from AWS?
Ian Massingham
 
DevTalks Romania - Getting Started with AWS Lambda & the Serverless Cloud
DevTalks Romania - Getting Started with AWS Lambda & the Serverless CloudDevTalks Romania - Getting Started with AWS Lambda & the Serverless Cloud
DevTalks Romania - Getting Started with AWS Lambda & the Serverless Cloud
Ian Massingham
 
Getting started with AWS Lambda and the Serverless Cloud
Getting started with AWS Lambda and the Serverless CloudGetting started with AWS Lambda and the Serverless Cloud
Getting started with AWS Lambda and the Serverless Cloud
Ian Massingham
 
AWS AWSome Day - Getting Started Best Practices
AWS AWSome Day - Getting Started Best PracticesAWS AWSome Day - Getting Started Best Practices
AWS AWSome Day - Getting Started Best Practices
Ian Massingham
 
AWS IoT Workshop Keynote
AWS IoT Workshop KeynoteAWS IoT Workshop Keynote
AWS IoT Workshop Keynote
Ian Massingham
 
Security Best Practices: AWS AWSome Day Management Track
Security Best Practices: AWS AWSome Day Management TrackSecurity Best Practices: AWS AWSome Day Management Track
Security Best Practices: AWS AWSome Day Management Track
Ian Massingham
 
AWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:CapAWS re:Invent 2016 Day 2 Keynote re:Cap
AWS re:Invent 2016 Day 2 Keynote re:Cap
Ian Massingham
 
AWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapAWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:Cap
Ian Massingham
 
Getting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless CloudGetting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless Cloud
Ian Massingham
 
Building Better IoT Applications without Servers
Building Better IoT Applications without ServersBuilding Better IoT Applications without Servers
Building Better IoT Applications without Servers
Ian Massingham
 
AWS AWSome Day Roadshow
AWS AWSome Day RoadshowAWS AWSome Day Roadshow
AWS AWSome Day Roadshow
Ian Massingham
 
AWS AWSome Day Roadshow Intro
AWS AWSome Day Roadshow IntroAWS AWSome Day Roadshow Intro
AWS AWSome Day Roadshow Intro
Ian Massingham
 
Hashiconf AWS Lambda Breakout
Hashiconf AWS Lambda BreakoutHashiconf AWS Lambda Breakout
Hashiconf AWS Lambda Breakout
Ian Massingham
 
Getting started with AWS IoT on Raspberry Pi
Getting started with AWS IoT on Raspberry PiGetting started with AWS IoT on Raspberry Pi
Getting started with AWS IoT on Raspberry Pi
Ian Massingham
 
AWSome Day Dublin Intro & Closing Slides
AWSome Day Dublin Intro & Closing Slides AWSome Day Dublin Intro & Closing Slides
AWSome Day Dublin Intro & Closing Slides
Ian Massingham
 
GOTO Stockholm - AWS Lambda - Logic in the cloud without a back-end
GOTO Stockholm - AWS Lambda - Logic in the cloud without a back-endGOTO Stockholm - AWS Lambda - Logic in the cloud without a back-end
GOTO Stockholm - AWS Lambda - Logic in the cloud without a back-end
Ian Massingham
 
What's New at AWS Update for AWS User Groups
What's New at AWS Update for AWS User Groups What's New at AWS Update for AWS User Groups
What's New at AWS Update for AWS User Groups
Ian Massingham
 
Advanced Security Masterclass - Tel Aviv Loft
Advanced Security Masterclass - Tel Aviv LoftAdvanced Security Masterclass - Tel Aviv Loft
Advanced Security Masterclass - Tel Aviv Loft
Ian Massingham
 

Recently uploaded (20)

Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 

Scaling on AWS for the First 10 Million Users at Websummit Dublin

  • 1. WEB SUMMIT DUBLIN 2014 #AWS #WEBSUMMIT Scaling on AWS for the First 10 Million Users Ian Massingham — Technical Evangelist [email protected] @IanMmmm STARTING AT 11:00
  • 2. An Introduction to Scaling on AWS
  • 3. An awful lot of things to read Not where we want to start EC2 Auto Scaling is one tool, not the single thing that ‘fixes’ everything or enables you to scale
  • 4. SO WHAT DO WE NEED FIRST?
  • 6. 2004 2014 $7B+ retail business 8,000+ employees A whole lot of servers Every day, AWS adds enough server capacity to power that entire $7B enterprise
  • 7. Foundation Services Infrastructure Collaboration and Sharing Storage (Object, Block and Archive) Security & Networking Regions Availability Zones Access Control Platform Services Databases Relational NoSQL Caching Analytics Hadoop Real-time Data warehouse App Services Queuing Orchestration App streaming Transcoding Email Search Deployment & Management Containers Dev/ops Tools Resource Templates Mobile Services Identity Sync Mobile Analytics Notifications Enterprise Applications Virtual Desktops Data Workflows Usage Tracking Monitoring and Logs Compute (VMs, Auto-scaling and Load Balancing) CDN and Points of Presence
  • 8. Startups on AWS http://aws.amazon.com/solutions/case-studies/
  • 9. DAY ONE, USER ONE. PROBABLY YOU! • A single EC2 instance • With a full stack on this host • Web app • Database • Management • A single Elastic IP address • Amazon Route 53 for DNS Elastic IP address EC2 instance Amazon Route 53 User
  • 10. WE’RE GOING TO NEED A BIGGER BOX! • Simplest approach to scaling • You can now leverage PIOPs • High I/O instances • High memory instances • High CPU instances • High storage instances • Easy to change instance sizes • Will hit an endpoint eventually
  • 11. WE’RE GOING TO NEED A BIGGER BOX! • We could potentially get to a few hundred to a few thousand depending on application complexity and traffic • No failover • No redundancy • Too many eggs in one basket Elastic IP address EC2 instance Amazon Route 53 User
  • 12. DAY TWO, USER >1 Web instance Database instance Elastic IP address Amazon Route 53 User • Separate out the functions on our single host onto more than one: • Web • Database • Make use of a database service
  • 13. Microsoft SQL, Oracle, MySQL or PostgresSQL managed service Flexible licensing: BYOL or Included Self-Managed Fully-Managed Massively parallel, petabyte scale, data warehouse service Fast, powerful & easy to scale Managed NoSQL database service using SSD storage Seamless scalability & zero administration Database server on Amazon EC2 Amazon RDS Amazon DynamoDB Amazon Redshift Your chosen database running on Amazon EC2 Database Options
  • 14. Building Blocks for Scaling on AWS
  • 15. HOW DO I DETERMINE WHICH DB TECHNOLOGY I NEED?
  • 16. Why start with SQL? • Established and well-worn technology • Lots of existing code, communities, books & tools • You aren’t going to break SQL DBs in your first 10 million users. No really, you won’t* • Clear patterns to scalability * Unless you are manipulating data at MASSIVE scale; even then, SQL will have a place in your stack
  • 17. Why might you need to use a NoSQL DB? • Super low latency applications • Metadata driven datasets • Highly non-relational data • Need schema-less data constructs* • Massive amounts of data (again, in the TB range) • Rapid ingest of data ( thousands of records/sec ) *Need != “it is easier to do dev without schemas”
  • 18. IF YOU DO NEED NOSQL, CONSIDER AMAZON DYNAMODB • Managed, provisioned throughput NoSQL database • Fast, predictable performance • Fully distributed, fault tolerant architecture
  • 19. Elastic IP address Web instance Amazon Route 53 RDS DB instance User USER >100 • First, let’s separate out our single host into more than one: • Web • Database • Use Amazon RDS to make your life easier
  • 20. USER >1000 Web instance Amazon RDS DB instance Web instance Amazon RDS DB instance Active (Multi-AZ) Availability Zone Availability Zone Standby (Multi-AZ) Elastic Load Balancing Amazon Route 53 User • Next, let’s address the lack of failover and redundancy issues: • Elastic Load Balancing • Another web instance • In another Availability Zone • Enable Amazon RDS Multi-AZ
  • 21. USER 10,000 to 100,000s RDS DB Instance Active (Multi-AZ) RDS DB Instance Standby (Multi-AZ) Elastic Load Balancing RDS DB Instance Read Replica Availability Zone Availability Zone RDS DB Instance Read Replica RDS DB Instance Read Replica RDS DB Instance Read Replica Web instance Web instance Web instance Web instance Web instance Web instance Web instance Web instance Amazon Route 53 User
  • 22. Shift Some Load Around Elastic Load Balancing Web instance RDS DB Instance Active (Multi-AZ) Availability Zone Amazon CloudFront Amazon S3 Amazon Route 53 User ElastiCache Amazon Dynamo DB • Think components and services: • Move static content from the web instance to Amazon S3 and Amazon CloudFront • Move session/state and DB caching to Amazon ElastiCache or Amazon Dynamo DB
  • 23. NOW THAT OUR WEB TIER IS MUCH MORE LIGHTWEIGHT: AUTOSCALING!
  • 24. AMAZON EC2 AUTO SCALING Automatic resizing of compute clusters based on demand metrics Trigger auto-scaling policy Amazon CloudWatch Feature Details Control Define minimum and maximum instance pool sizes and when scaling and cool down occurs Integration Use metrics gathered by CloudWatch to drive scaling (including custom metrics) Instance Types Use Auto Scaling with On-Demand and Spot Instances
  • 25. NOVEMBER TRAFFIC TO AMAZON.COM AUTO SCALING LETS YOU DO THIS 76% of traditionally provisioned capacity Traditional provisioning level 24% of traditionally provisioned capacity
  • 26. Web instance Availability Zone Amazon Route 53 User Amazon S3 Amazon CloudFront Web instance Availability Zone Elastic Load Balancing Amazon RDS DB Instance DynamoDB Read Replica Web instance Web instance ElastiCache RDS DB Instance Read Replica Web instance Web instance RDS DB Instance ElastiCache Standby (Multi-AZ) RDS DB Instance Active (Multi-AZ) USER 500,000+
  • 28. GOING BEYOND 500,000 USERS • Monitoring, metrics and logging • Listen and respond to customer feedback as well as your metrics • Optimise each service/component • Implement a Service Orientated Architecture with loose coupling • Load balance between tiers
  • 29. RDS DB Instance Active (Multi-AZ) Availability Zone Elastic Load Balancing RDS DB Instance Read Replica RDS DB Instance Read Replica Web instance Web instance Web instance Web instance Amazon Route 53 User Amazon S3 Amazon CloudFront Amazon SQS Amazon DynamoDB ElastiCache Worker instance Worker instance Amazon CloudWatch Internal app instance Internal app instance Amazon SES USER 1 MILLION+
  • 30. WANT TO LEARN MORE? COME TO OUR ARCHITECTURE ASK US ANYTHING TODAY AT 16:00
  • 31. WEB SUMMIT DUBLIN 2014 #AWS #WEBSUMMIT DON’T FORGET YOUR CREDITS Ian Massingham — Technical Evangelist @IanMmmm AWS Global News and Service Launches @AWScloud AWS UK & Ireland News, Events & Webinars @AWS_UKI