7. SAYS on AWS
AWS for High Availability
serving assets
delivering visits to client
AWS Cloud Kata for Start-Ups and Developers
8. SAYS on AWS
S3 + CloudFront
to serve assets
AWS Cloud Kata for Start-Ups and Developers
9. SAYS on AWS
Elastic Beanstalk (EC2 + SQS)
delivering 6 millions visits
fully managed auto scaling and queue service
AWS Cloud Kata for Start-Ups and Developers
10. How this helped us
to get to scale
Engineers focus on the app
AWS handles the growing pain
AWS Cloud Kata for Start-Ups and Developers
13. 503
Service Temporarily Unavailable
The server is temporarily unable
to service your request due to
maintenance downtime or capacity
problems. Please try again later.
22. Database Options
Self-Managed
Database Server
on Amazon EC2
Your choice of
database running on
Amazon EC2
Bring Your Own
License (BYOL)
Fully-Managed
Amazon RDS
Relational Database
as a managed
service
Flexible licensing:
BYOL or License
Included
Amazon
DynamoDB
Managed NoSQL
database service
using SSD storage
Seamless scalability
Zero administration
23. But how do I choose what
DB technology I need?
SQL? NoSQL?
29. Why SQL?
Established and well worn technology
Lots of existing code, communities, books, tools, etc
Clear patterns to scalability
You aren’t going to break SQL DBs in your first 10
million users. No really, you won’t
30. Amazon
Rela&onal
Database
Service
(RDS)
Feature
PlaAorm
support
Preconfigured
Automated
patching
Details
Create
MySQL,
SQL
Server
and
Oracle
Get
started
instantly
with
sensible
default
seAngs
Keep
your
database
plaEorm
up
to
date
automa&cally
Backups
Failover
• Database-as-a-Service
• No need to install or manage database
instances
• Scalable and fault tolerant configurations
Automa&c
backups
and
point
in
&me
recovery
using
snapshots
Manual
DB
snapshots
Automated
failover
to
slave
hosts
in
event
of
a
failure
ReplicaFon
Easily
create
read-‐replicas
of
your
data
and
seamlessly
replicate
data
across
availability
zones
31. Auto-Scaling
Automatic resizing of
compute clusters based on
demand
Feature
Amazon
CloudWatch
Trigger
auto-‐scaling
policy
Details
Control
Define
minimum
and
maximum
instance
pool
sizes
and
when
scaling
and
cool
down
occurs.
Integrated
to
Amazon
CloudWatch
Use
metrics
gathered
by
CloudWatch
to
drive
scaling.
Instance
types
Run
Auto
Scaling
for
On-‐Demand
and
Spot
Instances.
Compa&ble
with
VPC.
as-create-auto-scaling-group MyGroup
--launch-configuration MyConfig
--availability-zones us-east-1a
--min-size 4
--max-size 200
41. Production 1.0 Architecture
Well-‐designed,
2
Tier
architecture
Highly
Available
due
to
Mul&ple
Availability
Zone
Load
Balancing
&
Auto-‐Scaling
for
full
scalability
Fully
managed
Database
included
Capable
of
serving
>10K-‐100Ks
users
43. Production 1.0 Architecture
Wasted
server
capacity
for
sta&c
content
Reliability
and
durability
are
not
yet
op&mal
End-‐user
experience
could
be
improved
thru
offloading
&
caching
46. Simple Storage Service (S3)
Feature
Flexible
object
store
Access
control
Server-‐side
encrypFon
MulF-‐part
uploads
Object
versioning
Object
expiry
Durable storage, any object
99.999999999% durability of objects
Unlimited storage of objects of any type
Up to 5TB size per object
Access
logging
Web
content
hosFng
NoFficaFons
Import/Export
Details
Buckets
act
like
drives,
folder
structures
within
Granular
control
over
object
permissions
256bit
AES
encryp&on
of
objects
Improved
throughput
&
control
Archive
old
objects
and
version
new
ones
Automa&cally
remove
old
objects
Full
audit
log
of
bucket/object
ac&ons
Serve
content
as
web
site
with
built
in
page
handling
Receive
no&fica&ons
on
key
events
Physical
device
import/export
service
47. CloudFront
• World-wide content distribution
network
• Easily distribute content to end
users with low latency, high data
transfer speeds, and no
commitments
Feature
Fast
Integrated
with
other
services
Dynamic
content
Streaming
Details
Mul&ple
world-‐wide
edge
loca&ons
to
serve
content
as
close
to
your
users
as
possible
Works
seamlessly
with
S3
and
EC2
origin
servers
Supports
sta&c
and
dynamic
content
from
origin
servers
Supports
rtmp
from
S3
and
includes
support
for
live
streaming
from
Adobe
FMS
and
Microsod
Media
Server
49. Production 1.2 Architecture
Well-‐designed,
2
Tier
architecture
Highly
Available
due
to
Mul&ple
Availability
Zone
Load
Balancing
&
Auto-‐Scaling
for
full
scalability
Fully
managed
Database
included
Sta&c
content
stored
in
durable,
consistent
way
Improved
end-‐user
experience
through
CDN
Capable
of
serving
>100K-‐1M+
users
55. Elastic MapReduce (EMR)
• Managed, elastic Hadoop cluster
• Integrates with S3 & DynamoDB
• Leverage Hive & Pig analytics scripts
Feature
Scalable
Integrated
with
other
services
Comprehensive
Cost
effecFve
Monitoring
Details
Use
as
many
or
as
few
compute
instances
running
Hadoop
as
you
want.
Modify
the
number
of
instances
while
your
job
flow
is
running
Works
seamlessly
with
S3
as
origin
and
output.
Integrates
with
DynamoDB
Supports
languages
such
as
Hive
and
Pig
for
defining
analy&cs,
and
allows
complex
defini&ons
in
Cascading,
Java,
Ruby,
Perl,
Python,
PHP,
R,
or
C++
Works
with
Spot
instance
types
Monitor
job
flows
from
with
the
management
console
56. Foursquare…
…generates a lot of Data
Founded in 2009
112M in Venture Capital
33 million users
1.3 million businesses using the service
3.5 billion check-ins
15M+ venues,
Terabytes of log data
57. Uses EMR for
Evaluation of new features
Machine learning
Exploratory analysis
Daily customer usage reporting
Long-term trend analysis
58. Benefits of EMR
Ease-of-Use
“We have decreased the processing time for urgent data-analysis”
Flexibility
To deal with changing requirements & dynamically expand reporting clusters
Costs
“We have reduced our analytics costs by over 50%”
60. Production 1.3 Architecture
Well-‐designed,
2
Tier
architecture
Highly
Available
due
to
Mul&ple
Availability
Zone
Load
Balancing
&
Auto-‐Scaling
for
full
scalability
Sta&c
content
stored
in
durable,
consistent
way
Improved
end-‐user
experience
through
CDN
Big
Data
analy&cs
built
in
for
con&nuous
op&miza&on
Capable
of
serving
>1m-‐10M+
users