6. US-WEST (Oregon)
EU-WEST (Ireland)
ASIA PAC (Tokyo)
ASIA PAC
(Singapore)
US-WEST (N. California)
SOUTH AMERICA (Sao Paulo)
US-EAST (Virginia)
AWS GovCloud (US)
ASIA PAC (Sydney)
Regions
7. US-WEST (Oregon))
EU-WEST (Ireland)
ASIA PAC (Tokyo)
ASIA PAC
(Singapore)
US-WEST (N. California)
SOUTH AMERICA (Sao Paulo)
US-EAST (Virginia)
AWS GovCloud (US)
ASIA PAC (Sydney)
Availability Zones
8. Storage Types
Ephemeral Storage
• (Almost) every instance has them
• Fast
• Cheap
• Volatile
Elastic Block Storage
• 1GB to 1TB
• Snapshot-able
• You choose the IOPS
• Good for random IO
10. Storage Types
Database
• Readily queryable
• Consistency/performance options
SQS
• Logic built-in
• Infinitely scalable
• Good for small blobs and write/read
once
16. Loose coupling sets you free!
• The looser they're coupled, the bigger they scale
– Independent components
– Design everything as a black box
– Decouple interactions
– Load-balance clusters
Gen. Thumb Image Reg. Meta Data
Gen. Thumb Image Reg. Meta Data
Q Q Q
Tight Coupling
Use Amazon SQS as Buffers
Loose Coupling
17. Allows for Parallel Processing and Failure
• Fan out
• Use varied instance types
• Use varied billing models
20. Let’s Auto Scale
Auto Scaling
Automatic resizing of compute clusters based on demand
Trigger auto-
scaling policy
Feature 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. Compatible with VPC.
as-create-auto-scaling-group MyGroup
--launch-configuration MyConfig
--availability-zones eu-west-1a
--min-size 4
--max-size 200
22. …and Spread the Load
Elastic Load Balancing
• Create highly scalable applications
• Distribute load across EC2 instances
in multiple availability zones
Feature Details
Available Load balance across instances in multiple
Availability Zones
Health checks Automatically checks health of instances and
takes them in or out of service
Session stickiness Route requests to the same instance
Secure sockets layer Supports SSL offload from web and application
servers with flexible cipher support
Monitoring Publishes metrics to CloudWatch
23. Where should session state reside?
Trigger auto-
scaling policy
Session State
Service
Not Here
Here
State must reside OUTSIDE
the scope of the elements you
wish to scale
24. But usually some state has to reside somewhere
Cookies in browser
Memory-resident session manager
Session database
Framework-provided session handler
25. So this store of state needs to be…
Performant
Scalable
Reliable
26. And what do I build it on?
The state service itself must
be well architected
27. Scaled and Loaded Multi-tier Architecture
App DB S3
SQSSNS
AppWeb
Web
Auto scaling Group Auto scaling Group
Dynamo
DB
ELB
28. • GeneXus é a fornecedora líder de
ferramentas para desenvolvimento ágil de
software empresarial, com base na
captação e gestão de conhecimento do
usuário sobre seu negócio.
• Com mais de 7.000 empresas e governos
como clientes, tem escritórios no Brasil,
EUA, Japão, México e Uruguai, presença
em 45 países.
"A estabilidade e escalabilidade na principal ferramenta
de discovery que tem GeneXus: A nossa própria trial".
A cada experiência do
usuário com nossa
Trial, apostamos nossa
marca. A AWS deu a
tranquilidade que
precisávamos em uma
área critica.
Gerardo Wisosky -
Brasil Country Manager
29. O Desafio
• Alcançar aplicativos de Prototipagem na
nuvem
• Garantir a qualidade da interação de novos
usuários com GeneXus
• Apoiar a geração de milhares de
aplicações web e móveis por mês
• Permitir crescer em função do aumento de
demanda
30. Sobre a o Papel da AWS e Benefícios
alcançados
PARAGRAFO RESUMO
CASO _ KEY WORDS
de BENEFICIO,
DESAFIO VENCIDO –
RESUMO DO CASO EM
UM PARAGRAFO
• Facilidade de implementação do projeto
• Estabilidade das Apps para os usuários
• Escalabilidade para Teste
• Imagem de marca sólida, graças à
confiabilidade da AWS
• Previsibilidade na alocação de recursos
para o projeto
31. IAM Temporary Security Credentials
• Use Cases
Identity Federation to AWS APIs
Mobile and browser-based applications
Consumer applications with unlimited users
• Scales to millions of users
– No need to create an IAM identity for every user
32. AWS Account
Credentials
IAM User
Temporary
Security
Credentials
The IAM Hierarchy of Permissions
Permissions Example
Unrestricted access to all enabled
services and resources
Action: *
Effect: Allow
Resource: *
(implicit)
Access restricted by Group and
User policies
Action: [‘s3:*’, ‘sts:Get*’]
Effect: Allow
Resource: *
Access restricted by generating
identity and further by policies
used to generate token
Action: [ ‘s3:Get*’ ]
Effect: Allow
Resource:
‘arn:aws:s3:::userbucket/*’
35. Create your own on EC2
( Some popular choices in no particular order )
Many options on the AWS Marketplace
https://aws.amazon.com/marketplace
36. RDS
• Managed MySQL, Oracle and MS SQL
• Helps ease scaling in some scenarios
• Automates backups, snapshots and failover
37. Vertical Scaling
“We’re gonna need a bigger box”
• Simplest approach
• Can now leverage PIOPs
• High I/O instances
• Easy to change instance sizes
• Will hit an endpoint eventually
hi1.4xlarge
m2.4xlarge
m1.small
38. Master/Slave Horizontal Scaling
• Reasonably simple to adapt to
• Can now leverage PIOPs
• Easy to change instances sizes
• Will hit an endpoint eventually
39. Sharded Horizontal Scaling
Hash Ring
A
BC
D
• More complex at the application layer
• ORM support can help
• No practical limit on scalability
• Operation complexity/sophistication
• Shard by function or key space
• RDBMS or NoSQL
40. Horizontal Scaling – Fully Managed
DynamoDB
• Provisioned throughput NoSQL database
• Fast, predictable performance
• Fully distributed, fault tolerant architecture
• Considerations for non-uniform data
Feature Details
Provisioned
throughput
Dial up or down provisioned read/write
capacity.
Predictable
performance
Average single digit millisecond latencies
from SSD-backed infrastructure.
Strong consistency Be sure you are reading the most up to
date values.
Fault tolerant Data replicated across Availability Zones.
Monitoring Integrated to CloudWatch.
Secure Integrates with AWS Identity and Access
Management (IAM).
Elastic
MapReduce
Integrates with Elastic MapReduce for
complex analytics on large datasets.
41. Petabyte-Scale Data Warehousing
Feature Details
Optimized for
Data
Warehousing
Redshift uses a variety of innovations to
obtain very high query performance on
datasets ranging in size from hundreds
of gigabytes to a petabyte or more.
Scalable Easily scale the number of nodes in your
data warehouse up or down as your
performance or capacity needs change
Fault tolerant Data replicated across Availability
Zones.
Monitoring Integrated to CloudWatch.
Secure Encrypt data in transit and at rest. Can
also be run in VPC to isolate your data
warehouse cluster.
S3 intergration Loads data in parallel to each node from
S3.
Elastic
MapReduce
Integrates with ERM via Data Pipeline.
42. Summary
• Use these techniques (and many, many others) situationally
• Awareness of the options is the first step to good design
• Scaling is the ability to move the bottlenecks around to the
least expensive part of the architecture
• AWS makes this easier – so your application is not a victim of
its own success