SlideShare ist ein Scribd-Unternehmen logo
1 von 63
Downloaden Sie, um offline zu lesen
Journey Through the Cloud
ianmas@amazon.com
@IanMmmm
Ian Massingham — Technical Evangelist
Scalable Web Apps
Journey Through the Cloud
Learn from the journeys taken by other AWS customers
Discover best practices that you can use to bootstrap your projects
Common use cases and adoption models for the AWS Cloud
1
2
3
Scalable Web Apps
A very popular use-case for AWS services

Applications with growing, variable or cyclical demand fit AWS well 

Elasticity and automation can be exercised to real advantage

AWS services allow you to accelerate application development
Agenda
Why use AWS for scalable web applications?

Rule Book for scalable web application on AWS

Common patterns for web applications

Where to go to learn more
WHY AWS FOR SCALABLE
WEB APPLICATIONS?
Websites & Digital Transformation
BEING IN THE CLOUD GIVES
US THE SCALABILITY
OF ADDING APPLICATION
AND DATABASE SERVERS
AS WE NEED THEM.
Keith	
  Mitchell	
  
Programmer	
  
reddit.com
• reddit is a San Francisco, CA company that provides
reddit.com, a social news and entertainment website where
users can submit and rank ideas, images, and links
• reddit originally operated reddit.com on physical servers, but
after the number of users quadrupled in 18 months, the
company realized it couldn’t scale with an on-premises
environment
• By migrating to AWS, reddit can scale to manage 4 billion
page views per month and run its website with only 20
employees
With AWS, reddit scales its social news site to handle 4 billion
page views per month with only 20 employees
Find out more here : aws.amazon.com/solutions/case-studies/reddit/
Pick your platform
Use your favourite tools
Grow & shrink capacity to match demand
Spend your money on what matters
Take your app or site global in minutes
Never make your customers wait
1
2
3
4
5
6
RULE BOOK FOR SCALABLE WEB
APPLICATIONS ON AWS
Service all requests
Service requests as fast as possible
Handle requests at any volume
Simply your architecture
Automate operations & management
Use the unique properties of the cloud
1
2
3
4
5
6
Service all requests1
DNS APPLICATION DATA
Service all requests1
DNS APPLICATION DATAREQUEST
Service all requests1
DNS APPLICATION DATAREQUEST
Service all requests1
DNS APPLICATION DATAREQUEST ╳
Service all requests1
DNS APPLICATION DATAREQUEST
100%
Availability
SLA
aws.amazon.com/route53/sla
Global Delivered from AWS global edge locations for fast
and reliable domain name resolution
Scalable Automatically scales based upon query volumes
Latency based
routing
Supports resolution of endpoints based upon
latency, enabling multi-region application delivery
Integrated Integrates with other AWS services allowing Route
53 to front elastic load balancers, S3 and EC2
Secure Integrates with IAM giving fine grained control over
DNS record access
Service all requests1
DNS APPLICATION DATAREQUEST
1
DNS APPLICATION DATAREQUEST
Region
Region
Elastic
Load
Balancer
Elastic
Load
Balancer
Availability Zone
Availability Zone
Availability Zone
Availability Zone
Elastic load balancing
Multi-availability zone
Multi-region
Service all requests
1
DNS APPLICATION DATAREQUEST
Region
Region
Elastic
Load
Balancer
Elastic
Load
Balancer
Availability Zone
Availability Zone
Availability Zone
Availability Zone
Amazon
DynamoDB
Amazon
DynamoDB
Service all requests
Service requests as fast as possible2
Service requests as fast as possible
1) Chose the ‘closest’ endpoint
2
REQUEST
Amazon
Route 53
Region A Region B
2
REQUEST
Amazon
Route 53
Region A Region B
16ms 92ms
Service requests as fast as possible
1) Chose the ‘closest’ endpoint
2
REQUEST
Amazon
Route 53
Region A Region B
16ms 92ms
Service requests as fast as possible
1) Chose the ‘closest’ endpoint
2
Amazon
Route 53
Region A Region B
16ms
REGION A DNS ENTRY
REQUEST
Service requests as fast as possible
1) Chose the ‘closest’ endpoint
Service requests as fast as possible
2) Offload your application servers
2
London
Paris
NY
Served from S3
/images/*
3
Served from EC2
*.php
2
Single CNAME
www.mysite.com
1
Amazon CloudFront
Content delivery web service
Integrates with other Amazon Web Services
Products
Easily distribute content to end users with low
latency, high data transfer speeds, and no
minimum usage commitments
aws.amazon.com/cloudfront
Service requests as fast as possible
2) Offload your application servers
2
Without Amazon CloudFront
EC2 Instances running web and application servers
are loaded with user requests for content assets
Service requests as fast as possible
2) Offload your application servers
2
With Amazon CloudFront
A significant proportion of the load from user
requests is handled by Amazon CloudFront and the
EC2 cluster can be scaled down
Offload
Scale
Down
Service requests as fast as possible
2) Offload your application servers
2
Offload
Scale
Down
ResponseTime
ServerLoad
ResponseTime
ServerLoad
ResponseTime
Server
Load
No CDN CDN for
Static
Content
CDN for
Static &
Dynamic
Content
Service requests as fast as possible
3) Cache it if you can
2
Amazon ElastiCache
A web service that makes it easy to deploy,
operate, and scale an in-memory cache
Allows you to retrieve information from fast,
managed, in-memory caches, instead of
relying entirely on slower disk-based
databases
Supports two open-source in memory
caching engines: Memcached & Redis
Service requests as fast as possible
4) Single digit latencies where it matters
2
DatabaseQueryPerformance
Desired consistency & predictability
Scale
Service requests as fast as possible
4) Single digit latencies where it matters
2
DatabaseQueryPerformance
Desired consistency & predictability
Scale
Actual performance
degrades with scale
DatabaseQueryPerformance
Desired consistency & predictability
Scale
Actual performance
degrades with scale
Filling this gap requires:
Database sharding
Data caching
Provisioning
Cluster management
Fault management
Service requests as fast as possible
4) Single digit latencies where it matters
2
DatabaseQueryPerformance
Amazon DynamoDB Query Performance
Scale
Relational Database
Query Performance
Amazon
DynamoDB
Service requests as fast as possible
4) Single digit latencies where it matters
2
Amazon
DynamoDB
Amazon DynamoDB
A fast and flexible NoSQL database service
Consistent, single-digit millisecond latency at
any scale
Fully managed
Supports both document & key-value store
models
aws.amazon.com/dynamodb
Service requests as fast as possible
4) Single digit latencies where it matters
2
aws.amazon.com/solutions/case-studies/adroll/
3 Handle requests at any volume & scale
1) Scale up
Basic unit of compute capacity
Broad range of CPU, memory & local disk options
7 families available, from micro to compute, memory & storage optimized
Scale up with Elastic Compute Cloud (EC2)
3 Handle requests at any volume & scale
2) Scale out
Trigger	
  auto-­‐
scaling	
  policy
Auto Scaling
Amazon EC2 Auto Scaling
Allows you to scale your EC2 capacity up or
down automatically according to conditions
that you define
Increase the number of Amazon EC2
instances during demand spikes to maintain
performance & decrease capacity during lulls
to reduce costs
3
Manually
Send an API call or use CLI to launch/
terminate instances – Only need to
specify capacity change (+/-)
By Schedule
Scale up/down based on date and time
By Policy
Scale in response to changing
conditions, based on user configured
real-time monitoring and alerts
Auto-Rebalance
Instances are automatically launched/
terminated to ensure the application is
balanced across multiple Azs
Handle requests at any volume & scale
2) Scale out
3
Manually
Send an API call or use CLI to launch/
terminate instances – Only need to
specify capacity change (+/-)
By Schedule
Scale up/down based on date and time
By Policy
Scale in response to changing
conditions, based on user configured
real-time monitoring and alerts
Auto-Rebalance
Instances are automatically launched/
terminated to ensure the application is
balanced across multiple Azs
Preemptive manual scaling of
capacity
Adding 10 more instances before a
marketing event
Handle requests at any volume & scale
2) Scale out
3
Manually
Send an API call or use CLI to launch/
terminate instances – Only need to
specify capacity change (+/-)
By Schedule
Scale up/down based on date and time
By Policy
Scale in response to changing
conditions, based on user configured
real-time monitoring and alerts
Auto-Rebalance
Instances are automatically launched/
terminated to ensure the application is
balanced across multiple Azs
Preemptive manual scaling of
capacity
Adding 10 more instances before a
marketing event
Regular scaling up & down of
instances
Scaling from 0 to 2 to process SQS
messages every night or doubling
capacity on a Friday night
Handle requests at any volume & scale
2) Scale out
3
Manually
Send an API call or use CLI to launch/
terminate instances – Only need to
specify capacity change (+/-)
By Schedule
Scale up/down based on date and time
By Policy
Scale in response to changing
conditions, based on user configured
real-time monitoring and alerts
Auto-Rebalance
Instances are automatically launched/
terminated to ensure the application is
balanced across multiple Azs
Preemptive manual scaling of
capacity
Adding 10 more instances before a
marketing event
Regular scaling up & down of
instances
Scaling from 0 to 2 to process SQS
messages every night or doubling
capacity on a Friday night
Dynamic scaling based on
custom metrics
Scaling on SQS queue depth, average
CPU load or ELB latency
Handle requests at any volume & scale
2) Scale out
3
Manually
Send an API call or use CLI to launch/
terminate instances – Only need to
specify capacity change (+/-)
By Schedule
Scale up/down based on date and time
By Policy
Scale in response to changing
conditions, based on user configured
real-time monitoring and alerts
Auto-Rebalance
Instances are automatically launched/
terminated to ensure the application is
balanced across multiple Azs
Preemptive manual scaling of
capacity
Adding 10 more instances before a
marketing event
Regular scaling up & down of
instances
Scaling from 0 to 2 to process SQS
messages every night or doubling
capacity on a Friday night
Dynamic scaling based on
custom metrics
Scaling on SQS queue depth, average
CPU load or ELB latency
Maintaining capacity across
availability zones
Instance availability is maintained in
the event of AZ becoming unavailable
Handle requests at any volume & scale
2) Scale out
3 Handle requests at any volume & scale
3) Dial up throughout
Elastic Block Store
Provisioned IOPS up to 20,000
per EBS volume
Predictable performance for
demanding workloads such as
databases
DynamoDB
Provisioned read/write performance
per table
Predictable high performance
scaled via console or API
https://aws.amazon.com/blogs/aws/auto-scale-
dynamodb-with-dynamic-dynamodb/
Simply your architecture with services4
Perfection is achieved, not when there is
nothing more to add, but when there is
nothing left to take away

	
  	
  	
  	
  
	
  	
  
Antoine de Saint-Exupery

French writer (1900 - 1944)
4
Your

Business
70%
Infrastructure
that you own
& operate
30%
Managing All of the 

“Undifferentiated Heavy Lifting”
Simply your architecture with services
4
Your

Business
70%
Infrastructure
that you own
& operate
30%
Managing All of the 

“Undifferentiated Heavy Lifting”
AWS

Cloud-Based

Infrastructure
More Time to Focus on

Your Business
Configuring Your
Cloud Services
30%70%
Simply your architecture with services
4 Simply your architecture with services
Relational Database Service
Database-as-a-Service
No need to install or manage database instances
Scalable and fault tolerant configurations
DynamoDB
Provisioned throughput NoSQL database
Fast, predictable performance
Fully distributed, fault tolerant architecture
Use RDS for relational
databases such as
MySQL or Oracle
Use DynamoDB as high
performance document
or key-value database
4 Simply your architecture with services
Amazon SQS
Reliable, highly scalable, queue service
for storing messages as they travel
between instances
Reliable message
queuing without
additional software
Elastic MapReduce
Elastic Hadoop cluster
Integrates with S3 & DynamoDB
Leverage Hive & Pig analytics scripts
Integrates with instance types such as
spot
Process large volumes of
data cost effectively with
Amazon EMR
Amazon SQS
Processing task/
processing trigger
Processing results
4 Simply your architecture with services
Enterprise Applications
Administration & Security
Core Services
Platform Services
Infrastructure
AWS Marketplace
5
Access everything via
CLI, API or Console
Achieve the highest levels of
automation with ease
Find out more at: aws.amazon.com/developers/getting-started/
Automate operations & management
1) Everything is programmable
5 Automate operations & management
2) Think immutable, one click-deployments
AWS CloudFormation
An easy way to create & manage a collection of
related AWS resources, called a ‘stack’
Automate creation of ‘stacks’ in a repeatable way
Version control your infrastructure as you do your
software
Feature Details
Platform support Support for AWS resources from EC2 to IAM
Resource creation Creates AWS resources behind the scenes and reports
on progress
Declarative Specify stacks in JSON format and source control your
environments
Customizable Drive stack creation with paramaters
5 Automate operations & management
2) Think immutable, one click-deployments
Launch and terminate 

Docker containers
Across a cluster 

of EC2 instances
Mount persistent 

volumes at launch
Private Docker 

repositories
Amazon EC2 Container Service
5 Automate operations & management
2) Think immutable, one click-deployments
Amazon EC2 Container Service
5 Automate operations & management
3) Design for availability, implement self healing
Customize instance startup
Get instances to ask ‘who am I?’
question on startup and be
configured dynamically upon being
answered
Maintain capacity of
instances
Using a minimum pool size will
maintain capacity in the event
of instance failures
Know what’s going on, take
automated actions
Use CloudWatch standard and
custom metrics to create alarms.
Respond with automated
administration actions
Bootstrapping Auto-scaling CloudWatch
5 Automate operations & management
3) Design for availability, implement self healing
https://github.com/Netflix/SimianArmy
6 Use the unique properties of the cloud
1) Optimize costs with different instance types
Choose an instance 

that best meets your basic
requirements
Start with memory & then choose
closest virtual cores
Assess peak IOPS storage
requirements
Deploy & run multiple instances in
multiple Availability Zones
Change instance size up or
down based upon monitoring
Use CloudWatch & Trusted
Advisor to assess
Start Deploy & ScaleTune
6 Use the unique properties of the cloud
1) Optimize costs with different instance types
00:00 01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00
100%
75%
58%
38%
13%
8%
On Demand Instance
Reserved Instance
COMMON PATTERNS FOR
WEB APPLICATIONS
Stateless
Scale horizontally
Loose coupling
Automation
RESOURCES YOU CAN USE
TO LEARN MORE
aws.amazon.com/websites/
aws.amazon.com/solutions/case-studies/
aws.amazon.com/architecture/
Certification
aws.amazon.com/certification
Self-Paced Labs
aws.amazon.com/training/

self-paced-labs
Try products, gain new skills, and
get hands-on practice working
with AWS technologies
aws.amazon.com/training
Training
Validate your proven skills and
expertise with the AWS platform
Build technical expertise to
design and operate scalable,
efficient applications on AWS
AWS Training & Certification
Follow
us
for m
ore
events
&
w
ebinars
@AWScloud for Global AWS News & Announcements
@AWS_UKI for local AWS events & news
@IanMmmm
Ian Massingham — Technical Evangelist

Weitere ähnliche Inhalte

Andere mochten auch

Introduction to RichFaces
Introduction to RichFacesIntroduction to RichFaces
Introduction to RichFacesMax Katz
 
Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps Amazon Web Services
 
MongoDB World 2016: Lunch & Learn: Google Cloud for the Enterprise
MongoDB World 2016: Lunch & Learn: Google Cloud for the EnterpriseMongoDB World 2016: Lunch & Learn: Google Cloud for the Enterprise
MongoDB World 2016: Lunch & Learn: Google Cloud for the EnterpriseMongoDB
 
Recording and media manipulation of WebRTC streams
Recording and media manipulation of WebRTC streamsRecording and media manipulation of WebRTC streams
Recording and media manipulation of WebRTC streamsLuis Lopez
 
NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015
NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015
NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015Stéphane ESCANDELL
 
IoT Architecture - are traditional architectures good enough or do we need n...
 IoT Architecture - are traditional architectures good enough or do we need n... IoT Architecture - are traditional architectures good enough or do we need n...
IoT Architecture - are traditional architectures good enough or do we need n...Guido Schmutz
 
I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices
I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices
I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices Apigee | Google Cloud
 
Giving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS CommunityGiving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS CommunityMongoDB
 
Mining public datasets using opensource tools: Zeppelin, Spark and Juju
Mining public datasets using opensource tools: Zeppelin, Spark and JujuMining public datasets using opensource tools: Zeppelin, Spark and Juju
Mining public datasets using opensource tools: Zeppelin, Spark and Jujuseoul_engineer
 
A Tool For Big Data Analysis using Apache Spark
A Tool For Big Data Analysis using Apache SparkA Tool For Big Data Analysis using Apache Spark
A Tool For Big Data Analysis using Apache Sparkdatamantra
 
AWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWS
AWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWSAWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWS
AWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWSAmazon Web Services
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software ArchitectureChris F Carroll
 
Kurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTCKurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTCLuis Lopez
 
Journey Through the AWS Cloud - Big Data Analysis
Journey Through the AWS Cloud - Big Data AnalysisJourney Through the AWS Cloud - Big Data Analysis
Journey Through the AWS Cloud - Big Data AnalysisAmazon Web Services
 
Webcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware AppsWebcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware AppsApigee | Google Cloud
 
Journey Through the Cloud - Digital Media
Journey Through the Cloud - Digital MediaJourney Through the Cloud - Digital Media
Journey Through the Cloud - Digital MediaAmazon Web Services
 
Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....
Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....
Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....Jeffrey Breen
 

Andere mochten auch (20)

Introduction to RichFaces
Introduction to RichFacesIntroduction to RichFaces
Introduction to RichFaces
 
Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps Journey Through the Cloud - Social & Mobile Apps
Journey Through the Cloud - Social & Mobile Apps
 
MongoDB World 2016: Lunch & Learn: Google Cloud for the Enterprise
MongoDB World 2016: Lunch & Learn: Google Cloud for the EnterpriseMongoDB World 2016: Lunch & Learn: Google Cloud for the Enterprise
MongoDB World 2016: Lunch & Learn: Google Cloud for the Enterprise
 
Recording and media manipulation of WebRTC streams
Recording and media manipulation of WebRTC streamsRecording and media manipulation of WebRTC streams
Recording and media manipulation of WebRTC streams
 
NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015
NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015
NodeJS et SocketIO en mode scalable dans le Cloud - GAB 2015
 
IoT Architecture - are traditional architectures good enough or do we need n...
 IoT Architecture - are traditional architectures good enough or do we need n... IoT Architecture - are traditional architectures good enough or do we need n...
IoT Architecture - are traditional architectures good enough or do we need n...
 
I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices
I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices
I Love APIs 2015: Building Predictive Apps with Lamda and MicroServices
 
Giving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS CommunityGiving MongoDB a Way to Play with the GIS Community
Giving MongoDB a Way to Play with the GIS Community
 
Mining public datasets using opensource tools: Zeppelin, Spark and Juju
Mining public datasets using opensource tools: Zeppelin, Spark and JujuMining public datasets using opensource tools: Zeppelin, Spark and Juju
Mining public datasets using opensource tools: Zeppelin, Spark and Juju
 
The Google Scholar Revolution: a big data bibliometric tool
The Google Scholar Revolution:  a big data bibliometric toolThe Google Scholar Revolution:  a big data bibliometric tool
The Google Scholar Revolution: a big data bibliometric tool
 
A Tool For Big Data Analysis using Apache Spark
A Tool For Big Data Analysis using Apache SparkA Tool For Big Data Analysis using Apache Spark
A Tool For Big Data Analysis using Apache Spark
 
AWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWS
AWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWSAWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWS
AWS Webcast - Never Leave a Customer Behind: Scalable Web Apps with AWS
 
Agile Software Architecture
Agile Software ArchitectureAgile Software Architecture
Agile Software Architecture
 
Kurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTCKurento: a media server architecture and API for WebRTC
Kurento: a media server architecture and API for WebRTC
 
Scalable web architecture
Scalable web architectureScalable web architecture
Scalable web architecture
 
Journey Through the AWS Cloud - Big Data Analysis
Journey Through the AWS Cloud - Big Data AnalysisJourney Through the AWS Cloud - Big Data Analysis
Journey Through the AWS Cloud - Big Data Analysis
 
Scalable Web Architecture
Scalable Web ArchitectureScalable Web Architecture
Scalable Web Architecture
 
Webcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware AppsWebcast: API-Centric Architecture for Building Context-Aware Apps
Webcast: API-Centric Architecture for Building Context-Aware Apps
 
Journey Through the Cloud - Digital Media
Journey Through the Cloud - Digital MediaJourney Through the Cloud - Digital Media
Journey Through the Cloud - Digital Media
 
Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....
Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....
Big Data Step-by-Step: Infrastructure 3/3: Taking it to the cloud... easily.....
 

Mehr von Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Mehr von Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Kürzlich hochgeladen

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 

Kürzlich hochgeladen (20)

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 

Journey Through the Cloud - Scalable Web Apps

  • 1. Journey Through the Cloud ianmas@amazon.com @IanMmmm Ian Massingham — Technical Evangelist Scalable Web Apps
  • 2. Journey Through the Cloud Learn from the journeys taken by other AWS customers Discover best practices that you can use to bootstrap your projects Common use cases and adoption models for the AWS Cloud 1 2 3
  • 3. Scalable Web Apps A very popular use-case for AWS services
 Applications with growing, variable or cyclical demand fit AWS well 
 Elasticity and automation can be exercised to real advantage
 AWS services allow you to accelerate application development
  • 4. Agenda Why use AWS for scalable web applications?
 Rule Book for scalable web application on AWS
 Common patterns for web applications
 Where to go to learn more
  • 5. WHY AWS FOR SCALABLE WEB APPLICATIONS?
  • 6. Websites & Digital Transformation
  • 7. BEING IN THE CLOUD GIVES US THE SCALABILITY OF ADDING APPLICATION AND DATABASE SERVERS AS WE NEED THEM. Keith  Mitchell   Programmer   reddit.com • reddit is a San Francisco, CA company that provides reddit.com, a social news and entertainment website where users can submit and rank ideas, images, and links • reddit originally operated reddit.com on physical servers, but after the number of users quadrupled in 18 months, the company realized it couldn’t scale with an on-premises environment • By migrating to AWS, reddit can scale to manage 4 billion page views per month and run its website with only 20 employees With AWS, reddit scales its social news site to handle 4 billion page views per month with only 20 employees Find out more here : aws.amazon.com/solutions/case-studies/reddit/
  • 8. Pick your platform Use your favourite tools Grow & shrink capacity to match demand Spend your money on what matters Take your app or site global in minutes Never make your customers wait 1 2 3 4 5 6
  • 9. RULE BOOK FOR SCALABLE WEB APPLICATIONS ON AWS
  • 10. Service all requests Service requests as fast as possible Handle requests at any volume Simply your architecture Automate operations & management Use the unique properties of the cloud 1 2 3 4 5 6
  • 11. Service all requests1 DNS APPLICATION DATA
  • 12. Service all requests1 DNS APPLICATION DATAREQUEST
  • 13. Service all requests1 DNS APPLICATION DATAREQUEST
  • 14. Service all requests1 DNS APPLICATION DATAREQUEST ╳
  • 15. Service all requests1 DNS APPLICATION DATAREQUEST 100% Availability SLA aws.amazon.com/route53/sla Global Delivered from AWS global edge locations for fast and reliable domain name resolution Scalable Automatically scales based upon query volumes Latency based routing Supports resolution of endpoints based upon latency, enabling multi-region application delivery Integrated Integrates with other AWS services allowing Route 53 to front elastic load balancers, S3 and EC2 Secure Integrates with IAM giving fine grained control over DNS record access
  • 16. Service all requests1 DNS APPLICATION DATAREQUEST
  • 17. 1 DNS APPLICATION DATAREQUEST Region Region Elastic Load Balancer Elastic Load Balancer Availability Zone Availability Zone Availability Zone Availability Zone Elastic load balancing Multi-availability zone Multi-region Service all requests
  • 18. 1 DNS APPLICATION DATAREQUEST Region Region Elastic Load Balancer Elastic Load Balancer Availability Zone Availability Zone Availability Zone Availability Zone Amazon DynamoDB Amazon DynamoDB Service all requests
  • 19. Service requests as fast as possible2
  • 20. Service requests as fast as possible 1) Chose the ‘closest’ endpoint 2 REQUEST Amazon Route 53 Region A Region B
  • 21. 2 REQUEST Amazon Route 53 Region A Region B 16ms 92ms Service requests as fast as possible 1) Chose the ‘closest’ endpoint
  • 22. 2 REQUEST Amazon Route 53 Region A Region B 16ms 92ms Service requests as fast as possible 1) Chose the ‘closest’ endpoint
  • 23. 2 Amazon Route 53 Region A Region B 16ms REGION A DNS ENTRY REQUEST Service requests as fast as possible 1) Chose the ‘closest’ endpoint
  • 24. Service requests as fast as possible 2) Offload your application servers 2 London Paris NY Served from S3 /images/* 3 Served from EC2 *.php 2 Single CNAME www.mysite.com 1 Amazon CloudFront Content delivery web service Integrates with other Amazon Web Services Products Easily distribute content to end users with low latency, high data transfer speeds, and no minimum usage commitments aws.amazon.com/cloudfront
  • 25. Service requests as fast as possible 2) Offload your application servers 2 Without Amazon CloudFront EC2 Instances running web and application servers are loaded with user requests for content assets
  • 26. Service requests as fast as possible 2) Offload your application servers 2 With Amazon CloudFront A significant proportion of the load from user requests is handled by Amazon CloudFront and the EC2 cluster can be scaled down Offload Scale Down
  • 27. Service requests as fast as possible 2) Offload your application servers 2 Offload Scale Down ResponseTime ServerLoad ResponseTime ServerLoad ResponseTime Server Load No CDN CDN for Static Content CDN for Static & Dynamic Content
  • 28. Service requests as fast as possible 3) Cache it if you can 2 Amazon ElastiCache A web service that makes it easy to deploy, operate, and scale an in-memory cache Allows you to retrieve information from fast, managed, in-memory caches, instead of relying entirely on slower disk-based databases Supports two open-source in memory caching engines: Memcached & Redis
  • 29. Service requests as fast as possible 4) Single digit latencies where it matters 2 DatabaseQueryPerformance Desired consistency & predictability Scale
  • 30. Service requests as fast as possible 4) Single digit latencies where it matters 2 DatabaseQueryPerformance Desired consistency & predictability Scale Actual performance degrades with scale
  • 31. DatabaseQueryPerformance Desired consistency & predictability Scale Actual performance degrades with scale Filling this gap requires: Database sharding Data caching Provisioning Cluster management Fault management Service requests as fast as possible 4) Single digit latencies where it matters 2
  • 32. DatabaseQueryPerformance Amazon DynamoDB Query Performance Scale Relational Database Query Performance Amazon DynamoDB Service requests as fast as possible 4) Single digit latencies where it matters 2
  • 33. Amazon DynamoDB Amazon DynamoDB A fast and flexible NoSQL database service Consistent, single-digit millisecond latency at any scale Fully managed Supports both document & key-value store models aws.amazon.com/dynamodb Service requests as fast as possible 4) Single digit latencies where it matters 2 aws.amazon.com/solutions/case-studies/adroll/
  • 34. 3 Handle requests at any volume & scale 1) Scale up Basic unit of compute capacity Broad range of CPU, memory & local disk options 7 families available, from micro to compute, memory & storage optimized Scale up with Elastic Compute Cloud (EC2)
  • 35. 3 Handle requests at any volume & scale 2) Scale out Trigger  auto-­‐ scaling  policy Auto Scaling Amazon EC2 Auto Scaling Allows you to scale your EC2 capacity up or down automatically according to conditions that you define Increase the number of Amazon EC2 instances during demand spikes to maintain performance & decrease capacity during lulls to reduce costs
  • 36. 3 Manually Send an API call or use CLI to launch/ terminate instances – Only need to specify capacity change (+/-) By Schedule Scale up/down based on date and time By Policy Scale in response to changing conditions, based on user configured real-time monitoring and alerts Auto-Rebalance Instances are automatically launched/ terminated to ensure the application is balanced across multiple Azs Handle requests at any volume & scale 2) Scale out
  • 37. 3 Manually Send an API call or use CLI to launch/ terminate instances – Only need to specify capacity change (+/-) By Schedule Scale up/down based on date and time By Policy Scale in response to changing conditions, based on user configured real-time monitoring and alerts Auto-Rebalance Instances are automatically launched/ terminated to ensure the application is balanced across multiple Azs Preemptive manual scaling of capacity Adding 10 more instances before a marketing event Handle requests at any volume & scale 2) Scale out
  • 38. 3 Manually Send an API call or use CLI to launch/ terminate instances – Only need to specify capacity change (+/-) By Schedule Scale up/down based on date and time By Policy Scale in response to changing conditions, based on user configured real-time monitoring and alerts Auto-Rebalance Instances are automatically launched/ terminated to ensure the application is balanced across multiple Azs Preemptive manual scaling of capacity Adding 10 more instances before a marketing event Regular scaling up & down of instances Scaling from 0 to 2 to process SQS messages every night or doubling capacity on a Friday night Handle requests at any volume & scale 2) Scale out
  • 39. 3 Manually Send an API call or use CLI to launch/ terminate instances – Only need to specify capacity change (+/-) By Schedule Scale up/down based on date and time By Policy Scale in response to changing conditions, based on user configured real-time monitoring and alerts Auto-Rebalance Instances are automatically launched/ terminated to ensure the application is balanced across multiple Azs Preemptive manual scaling of capacity Adding 10 more instances before a marketing event Regular scaling up & down of instances Scaling from 0 to 2 to process SQS messages every night or doubling capacity on a Friday night Dynamic scaling based on custom metrics Scaling on SQS queue depth, average CPU load or ELB latency Handle requests at any volume & scale 2) Scale out
  • 40. 3 Manually Send an API call or use CLI to launch/ terminate instances – Only need to specify capacity change (+/-) By Schedule Scale up/down based on date and time By Policy Scale in response to changing conditions, based on user configured real-time monitoring and alerts Auto-Rebalance Instances are automatically launched/ terminated to ensure the application is balanced across multiple Azs Preemptive manual scaling of capacity Adding 10 more instances before a marketing event Regular scaling up & down of instances Scaling from 0 to 2 to process SQS messages every night or doubling capacity on a Friday night Dynamic scaling based on custom metrics Scaling on SQS queue depth, average CPU load or ELB latency Maintaining capacity across availability zones Instance availability is maintained in the event of AZ becoming unavailable Handle requests at any volume & scale 2) Scale out
  • 41. 3 Handle requests at any volume & scale 3) Dial up throughout Elastic Block Store Provisioned IOPS up to 20,000 per EBS volume Predictable performance for demanding workloads such as databases DynamoDB Provisioned read/write performance per table Predictable high performance scaled via console or API https://aws.amazon.com/blogs/aws/auto-scale- dynamodb-with-dynamic-dynamodb/
  • 42. Simply your architecture with services4 Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away             Antoine de Saint-Exupery French writer (1900 - 1944)
  • 43. 4 Your
 Business 70% Infrastructure that you own & operate 30% Managing All of the 
 “Undifferentiated Heavy Lifting” Simply your architecture with services
  • 44. 4 Your
 Business 70% Infrastructure that you own & operate 30% Managing All of the 
 “Undifferentiated Heavy Lifting” AWS
 Cloud-Based
 Infrastructure More Time to Focus on
 Your Business Configuring Your Cloud Services 30%70% Simply your architecture with services
  • 45. 4 Simply your architecture with services Relational Database Service Database-as-a-Service No need to install or manage database instances Scalable and fault tolerant configurations DynamoDB Provisioned throughput NoSQL database Fast, predictable performance Fully distributed, fault tolerant architecture Use RDS for relational databases such as MySQL or Oracle Use DynamoDB as high performance document or key-value database
  • 46. 4 Simply your architecture with services Amazon SQS Reliable, highly scalable, queue service for storing messages as they travel between instances Reliable message queuing without additional software Elastic MapReduce Elastic Hadoop cluster Integrates with S3 & DynamoDB Leverage Hive & Pig analytics scripts Integrates with instance types such as spot Process large volumes of data cost effectively with Amazon EMR Amazon SQS Processing task/ processing trigger Processing results
  • 47. 4 Simply your architecture with services Enterprise Applications Administration & Security Core Services Platform Services Infrastructure AWS Marketplace
  • 48. 5 Access everything via CLI, API or Console Achieve the highest levels of automation with ease Find out more at: aws.amazon.com/developers/getting-started/ Automate operations & management 1) Everything is programmable
  • 49. 5 Automate operations & management 2) Think immutable, one click-deployments AWS CloudFormation An easy way to create & manage a collection of related AWS resources, called a ‘stack’ Automate creation of ‘stacks’ in a repeatable way Version control your infrastructure as you do your software Feature Details Platform support Support for AWS resources from EC2 to IAM Resource creation Creates AWS resources behind the scenes and reports on progress Declarative Specify stacks in JSON format and source control your environments Customizable Drive stack creation with paramaters
  • 50. 5 Automate operations & management 2) Think immutable, one click-deployments Launch and terminate 
 Docker containers Across a cluster 
 of EC2 instances Mount persistent 
 volumes at launch Private Docker 
 repositories Amazon EC2 Container Service
  • 51. 5 Automate operations & management 2) Think immutable, one click-deployments Amazon EC2 Container Service
  • 52. 5 Automate operations & management 3) Design for availability, implement self healing Customize instance startup Get instances to ask ‘who am I?’ question on startup and be configured dynamically upon being answered Maintain capacity of instances Using a minimum pool size will maintain capacity in the event of instance failures Know what’s going on, take automated actions Use CloudWatch standard and custom metrics to create alarms. Respond with automated administration actions Bootstrapping Auto-scaling CloudWatch
  • 53. 5 Automate operations & management 3) Design for availability, implement self healing https://github.com/Netflix/SimianArmy
  • 54. 6 Use the unique properties of the cloud 1) Optimize costs with different instance types Choose an instance 
 that best meets your basic requirements Start with memory & then choose closest virtual cores Assess peak IOPS storage requirements Deploy & run multiple instances in multiple Availability Zones Change instance size up or down based upon monitoring Use CloudWatch & Trusted Advisor to assess Start Deploy & ScaleTune
  • 55. 6 Use the unique properties of the cloud 1) Optimize costs with different instance types 00:00 01:00 02:00 03:00 04:00 05:00 06:00 07:00 08:00 09:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 23:00 100% 75% 58% 38% 13% 8% On Demand Instance Reserved Instance
  • 56. COMMON PATTERNS FOR WEB APPLICATIONS
  • 58. RESOURCES YOU CAN USE TO LEARN MORE
  • 62. Certification aws.amazon.com/certification Self-Paced Labs aws.amazon.com/training/
 self-paced-labs Try products, gain new skills, and get hands-on practice working with AWS technologies aws.amazon.com/training Training Validate your proven skills and expertise with the AWS platform Build technical expertise to design and operate scalable, efficient applications on AWS AWS Training & Certification
  • 63. Follow us for m ore events & w ebinars @AWScloud for Global AWS News & Announcements @AWS_UKI for local AWS events & news @IanMmmm Ian Massingham — Technical Evangelist