aws for start-ups - leveraging aws for the lean development cycle
TRANSCRIPT
Fast
Flexible
Pivot
Iterate
Agility Code not documentation
MVP Sprint Working software
Continuous integration
Last ethical point
Just in time
Stand up meeting
Think big; act small
Fail fast; learn rapidly
1x free tier instance Zero cost
Marketing message Potential product features
Social interest
What to build Priorities Wish lists
Validate Define
AWS: 1x free tier instance Zero cost
Marketing message Potential product features
Social interest
What to build Priorities Wish lists
Validate Define
Managed ‘model’ architecture Scalability & availability from the start
Deliver simple things Deliver them well
Simplify operations Spend more time on your
application
Deploy Operate
AWS: Managed ‘model’ architecture Scalability & availability from the start
Deliver simple things Deliver them well
Simplify operations Spend more time on your
application
Deploy Operate
Trigger auto-
scaling policy
as-create-auto-scaling-group MyGroup
--launch-configuration MyConfig
--availability-zones eu-west-1a
--min-size 4
--max-size 200
Auto-scaling Automatic re-sizing of compute clusters based upon demand
Vertical Scaling
From $0.02/hr
Basic unit of compute capacity
Range of CPU, memory & local disk options
Many instance types available, from micro through cluster
compute to SSD backed
Scale up with Elastic Compute Cloud (EC2)
Buy time with instance sizes
London
Paris
NY
Served from S3
/images/*
3
Served from EC2
*.php
2
Single CNAME
www.mysite.com
1
CloudFront
World-wide content
distribution network
Easily distribute content
to end users with low
latency, high data
transfer speeds, and no
commitments.
With CloudFront
Load of user requests pushed into
CloudFront, EC2 cluster can scale
down
Offload Scale Down
Res
po
nse
Tim
e
Serv
er L
oad
Res
po
nse
Tim
e
Serv
er
Load
Res
po
nse
Tim
e
Serv
er
Load
No CDN CDN for
Static
Content
CDN for
Static &
Dynamic
Content
Offload Scale Down
Review Optimize Refactor
Database backups
EBS snapshots
Volume sizes
Database performance
Instance sizes
Provisioned IOPS
NoSQL for data hot-spots
Caching strategies
Decoupling
Review Optimize Refactor
Database backups
EBS snapshots
Volume sizes
Database performance
Instance sizes
Provisioned IOPS
NoSQL for data hot-spots
Caching strategies
Decoupling
Ensure things aren’t ‘hitting the
sides’
Buy some time with sensible
tweaks
Pay down technical debt you’ve accrued
Review Optimize Refactor
Ensure things aren’t ‘hitting the
sides’
Buy some time with sensible
tweaks
Pay down technical debt you’ve accrued
Database backups
EBS snapshots
Volume sizes
Database performance
Instance sizes
Provisioned IOPS
NoSQL for data hot-spots
Caching strategies
Decoupling
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 databases
Use DynamoDB for high performance key-
value DB
Amazon SQS
Processing
task/processing
trigger
Processing results
Amazon SQS Reliable, highly scalable, queue service
for storing messages as they travel
between instances
Task A
Task B
(Auto-scaling)
Task C
2
3
1
Simple Workflow Reliably coordinate processing steps
across applications
Integrate AWS and non-AWS resources
Manage distributed state in complex
systems
Push inter-process workflows into the cloud with SWF
Reliable message queuing without
additional software
Compute
Storage
Security Scaling
Database
Networking Monitoring
Messaging
Workflow
DNS
Load Balancing
Backup CDN
Everything is programmable
Access everything via CLI, API or
Console
Achieve the highest levels of automation
sophistication with ease
1 instance for 100 hours =
100 instances for 1 hour
Put everything in logs so you can do something with it
Lean meets agile
Automated testing
Continuous Integration
Infrastructure as code
Continuous Delivery Elastic Resources Pay as you go
11.6s
Mean time
between
deployments
(weekday)
1,079
Max number of
deployments in a
single hour
10,000
Mean number of
hosts
simultaneously
receiving a
deployment
30,000
Max number of
hosts
simultaneously
receiving a
deployment
Deployments at Amazon.com: