Weitere ähnliche Inhalte Ähnlich wie High Performance Web Applications (20) Mehr von Amazon Web Services (20) Kürzlich hochgeladen (20) High Performance Web Applications5. Retail Merchant Web
services services
6. Retail Merchant Web
services services
8. H
Utility computing
Available at the end of an API call.
Metered billing.
9. H
Family of 20 services
Adding new services and refinement weekly.
Rapid rate of innovation.
10. H
Undi!erentiated heavy lifting
Focus on your app, customers and business
12. H
aws.amazon.com
Free account.
Free tier.
14. r
Deliver a great experience to
your customers.
Responsive, fast web applications.
15. SCALE
g DECOUPLED OUT OPTIMIZE FOR COST S
5 patterns for
performance
v
CALIBRATED FOR:
CPU performance
v
CALIBRATED FOR:
IO performan
ce
C
AUTOMATE
20. r
Images, javascript, stylesheets,
HTML pages
Deliver as fast as possible to customers
21. r
Websites without the servers
Highly durable: 99.999999999%
Zero config: fire and forget
23. r
Low latency delivery of assets
Local caching for fast downloads
Amazon CloudFront
25. r
Create content distributions
From objects in S3
Any custom origin
Dynamic, streaming and static content
27. r
CNAME?
Map to any custom URL
assets.domain.com, www.domain.com
30. r
Application architecture
Small things, loosely coupled
32. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
33. r
Shared responsibility
Infrastructure by AWS
OS, application and data by customers
Tools to help meet best practices
34. r
Security groups
Customer controlled firewalls
All ports are closed by default
35. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
36. Assets
Load balancer
x App servers
Application
Database
Asynchronous processing
Analytics
37. r
Decoupling provides an architectural
framework for performance
Easier to separate concerns: assets, streaming, etc.
Easier to manage and scale.
39. r
Elasticity is a tenet of the cloud
Scale up when you need to
Scale down when you don’t
45. r
Horizontal scaling
drives performance up
...and costs down
46. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
47. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
48. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
49. r
Amazon Machine Images
encapsulate your app
Customize your virtual machines
AMI can be the unit of deployment
50. r
1. Spin up a new instance
using your AMI
Configured to bootstrap the app.
51. r
2. Pull down latest code base
From S3 or code repository
52. r
3. Start up the app on the instance
Ready to receive requests
53. r
4. Register with the load balancer
Job done.
54. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
55. r
Horizontal scaling allows for
fault tolerance
56. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
57. Assets
Load balancer
:( App servers
Application
Database
Asynchronous processing
Analytics
58. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
59. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
60. r
Deploying and scaling a datastore
Follow the same patterns:
horizontal scale, availability, automation.
61. r
One question:
Does your application require a
strict, controlled schema for query flexibility?
62. Does your application require a strict, controlled schema
r for query flexibility? Yes
Amazon Relational Database Service
Management systems: CRM, ERP, finance
63. r
Focus on your app
Handles tedious database admin tasks
Designed for availability
64. r
Multi-engine
MySQL, Oracle, Microsoft SQL Server
Up and running in six clicks
65. r
Point in time snapshots
Automatic. Easy recovery.
66. r
High availability
Deployed across multiple availability zones.
Synchronous writes.
67. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
68. r
Read replicas
Perfect for read heavy applications.
Asynchronous writes.
Replication metrics available.
69. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
70. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
71. Does your application require a strict, controlled schema
r for query flexibility? No
Amazon DynamoDB
Web apps, social apps, mobile apps,
user generated content,
unstructured data integration, lots of data.
72. r
Focus on your app
Managed NoSQL database service.
No schema.
73. r
Unlimited scale
Unlimited storage
Pay as you go
74. r
High performance
Single digit millisecond latencies
75. r
Zero admin
No instances to manage
Tiny API, perfectly formed
76. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
77. r
Asynchronous processing
Resize images. Transcode movies.
Resample media.
78. r
Follow the same best practices
Decouple. Stateless. Horizontal scale.
79. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
80. r
CloudFront for dynamic content
Edge caching for dynamic content
Cache by query string parameters
Multiple origin servers
Persistent connections to origin servers
82. r
Automate everything
The tedious.
The time consuming.
The error prone.
83. r
For example:
when increasing capacity
Launch instance.
Update application code.
Register with load balancer.
84. r
Auto-scaling
CloudWatch
Auto-scaling service
Elastic Load Balancer
85. r
Set operational thresholds
Network capacity > 80%
Memory utilization > 75%
CPU < 50%
86. r
Automatically respond to
operational alarms
Network capacity > 80%: add instances
Memory utilization > 75%: add instances
CPU < 50%: remove instances
87. r
Set bounds
Step change configured by number or
percentage of instances
88. r
Custom metrics
Respond to custom metrics
Page load time
Database query time
89. r
Automatic load balancer
configuration
Instances added/removed automatically
Health check for running application before
routing tra"c
90. r
Stateless operations are important
Decoupled, but stateless
Instances are naive to other instances
91. r
Treat your data as a royal garden
Backup to S3: high durability
Compute is a disposable resource
93. r
Range of resources
Choose the best instance type
for performance
95. r
High memory High CPU + memory
t1.micro m1.small High CPU cc2.8xlarge
96. Assets
Load balancer
App servers
Application
Database
Asynchronous processing
Analytics
98. r
Balance cost/performance
Mix instance types for application servers,
databases, ancillary services, analytics etc.
99. r
Migrate to large instance types
As your application grows
Use 64 bit from the outset, if possible
101. r
IO bound web applications are
more common
Application requires predictable, consistent IO
102. r
Provisioned throughput with
DynamoDB
No need to provision storage
Provision IO requirements:
reads and writes per second
107. r
Scale up, and carry on
DynamoDB will manage resources to
achieve and maintain throughput
108. r
Low latency, unlimited scale
Writes acknowledged when saved to disk in
multiple data centres. Backed on SSDs.
110. r
hi1.4xlarge instances
High capacity, high performance storage
2 x 1Tb SSD drives
111. r
Perfect match for databases
Relational and NoSQL storage
112. r
Perfect match for databases
Relational and NoSQL storage
90k to 120k IOPS
113. r
High performance network
10 gigabit ethernet
Placement groups
Perfect for distributed stores
115. r
Economies of scale
Drive down prices for customers
20 price drops in past 6 years
116. r
Maximize utilization
Greater utilization drives down cost
118. r
Reserved instances
Small upfront payment
Guaranteed capacity for 1 or 3 years
Lower hourly rate
119. r
Reserved instance resale
Sell your reservations on the resale market
Sellers set your own price
Buyers select and check out
123. r
Spot instances
Name your price computing
124. r
Spot instances
Lower costs
‘Overclock’ your app: more bang for your buck
125. Assets
Load balancer
App servers
Application
Database on SSDs
Asynchronous processing
Analytics
126. Assets
Load balancer
App servers
Application
Database on SSDs
Asynchronous processing
Analytics
127. Assets
Load balancer
App servers
Application
Database on SSDs
Asynchronous processing
Analytics
128. r
Become price aware
Price is a driver of your architecture
129. r
Automated bidding
Automate bids based on on-demand price
Run on spot only when cost e!ective
130. r
Continuous cost optimization
Evaluate your reserved instance/on-demand/
spot mix regularly as app requirements change
131. g DECOUPLED
5 patterns for
performance
132. SCALE
g DECOUPLED OUT
5 patterns for
performance
133. SCALE
g DECOUPLED OUT OPTIMIZE FOR COST S
5 patterns for
performance
134. SCALE
g DECOUPLED OUT OPTIMIZE FOR COST S
5 patterns for
performance
CALIBRATED FOR:
v CPU performance
CALIBRATED FOR:
v IO performan
ce
135. SCALE
g DECOUPLED OUT OPTIMIZE FOR COST S
5 patterns for
performance
v
CALIBRATED FOR:
CPU performance
v
CALIBRATED FOR:
IO performan
ce
C
AUTOMATE