Transcript Slide 1

Windows Azure
Conference 2014
Windows Azure Conference 2014
Designing Applications for Scalability



scale limits and contention points
patterns



Windows Azure Conference 2014
best practices
Azure Load Balancer
Azure Load Balancer
Subscription A
Role
Role
Instance
Role
Instance
Role
Instance
Role
Role
Instance
Role
Instance
Role
Instance
.
Role
Role
Instance
Role
Instance
Role
Instance
Role
Role
Instance
Role
Instance
Role
Instance
Cloud Service
Storage
Account
Tables
Storage
Account
Blobs
Azure
Service Bus
Azure
Platform
Infrastructure
Machines
Queues
Access
Control
Service
Tables
.
Storage
Content
Delivery
Network
Bandwidth
Azure Data Center
Windows Azure Conference 2014
Logical
Server
DB
DB
DB
Logical
Server
DB
DB
DB
SQL DB
scale
scale limits
Queues
Media
Services
Infrastructure as a
Service (VMs)
Electricity /
Cooling
...
density
Azure
Platform
Services
Blobs
Subscription B
Cloud Service
Subscription C
Azure Compute
Windows Azure Conference 2014
Windows Azure Conference 2014
Azure Load Balancer
Network Address Translator
(Router)
Role
Role
Instance
Role
Instance
Role
Instance
Role
Role
Instance
Role
Instance
Role
Instance
immutable package of software
Cloud Service
Windows Azure Conference 2014
Virtual machine
size
CPU
cores
Memory
OS disk space–
cloud services
OS disk space–
virtual machines
Max. data disks
(1 TB each)
Max. IOPS
(500 per disk)
ExtraSmall (A0)
Shared
768 MB
19 GB
20 GB
1
1x500
Small (A1)
1
1.75 GB
224 GB
70 GB
2
2x500
Medium (A2)
2
3.5 GB
489 GB
135 GB
4
4x500
Large (A3)
4
7 GB
999 GB
285 GB
8
8x500
ExtraLarge (A4)
8
14 GB
2,039 GB
605 GB
16
16x500
A5
2
14 GB
489 GB
135 GB
4
4X500
A6
4
28 GB
999 GB
285 GB
8
8x500
A7
8
56 GB
2,039 GB
605 GB
16
16x500
Windows Azure Conference 2014
larger number
smaller instances
 Aligning capacity and demand
SQL Server Enterprise Edition
the Web and Worker roles, the system reserves 4 GB of space for the Windows
pagefile, and 2 GB of space for the Windows dumpfile
 Extra large
Ax
Windows Azure Conference 2014
For
Azure Storage
Abstractions: Blob, Table, Queue
Windows Azure Conference 2014
Windows Azure Conference 2014
Access blob storage via the URL: http://<account>.blob.core.windows.net/
Storage
Location
Service
Data access
LB
LB
Front-Ends
Front-Ends
Partition Layer
Stream Layer
Intra-stamp replication
Inter-stamp (Geo) replication
Partition Layer
Stream Layer
Intra-stamp replication
auto-replicated to three storage
nodes
automatically
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Azure SQL Database
Windows Azure Conference 2014
Windows Azure Conference 2014
shared
throttle
unpredictability
transaction throughput
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Azure Distributed Cache
NOTE: _Not_ Azure Cache Service Preview
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
•
•
•
Dedicated resources for predictability, isolation and scale
Add a new worker role dedicated for caching
Scale cache independently of your app
•
•
•
Competes for memory, CPU and network
Scale with your app
Use for ASP.NET Session State, ASP.NET Page Output Caching
Windows Azure Conference 2014
•
•
Use worker roles to populate all cache
For example: weather, stocks, transportation and reference data
•
•
•
User worker roles to populate some data
For example: configuration service where 80% requests resolve same data
Good for mix & match with On-Demand
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Go Big!
Keep the lights on.
Windows Azure Conference 2014
Windows Azure Conference 2014
 Quantify the load
growth profile
lift and shift
density composability
 Optimize
chokepoints
large scale
Windows Azure Conference 2014
bottlenecks
availability
availability
Web Server
Web Server
App Server
Passive
Node
Web Server
Load
Balancer
App Server
Web Server
App Server
Web Server
Web Server
Windows Azure Conference 2014
SQL
Load-balancing:
- Queue-based
- ACL ed LB Endpoint
External Load
Balanced Endpoint
Instance
Instance
Instance
Instance
SQL Azure
Instance
Instance
Instance
Web Role
Worker Role
Azure Cloud Service
Windows Azure Conference 2014
 Throughput
throttling
Windows Azure Conference 2014
Optimizations at the Cloud Service level
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Azure Queue
Instance
Instance
Instance
Instance
Instance
Instance
Instance
Web Role
Worker Role
Azure Hosted Service
Windows Azure Conference 2014
Go Really Big
Multiple services, multiple data centers
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Azure Load Balancer
Web
Role
Instance
Role
Instance
Role
Instance
Routing Service
Azure Load Balancer
Web
Windows Azure Conference 2014
Role
Instance
Role
Instance
Azure Load Balancer
Role
Instance
Web
Role
Instance
Role
Instance
Azure Load Balancer
Role
Instance
Web
Role
Instance
Role
Instance
Web Service A
Web Service A
Web Service A
SQL Azure
SQL Azure
SQL Azure
SQL Azure
SQL Azure
SQL Azure
Storage Account A
Storage Account A
Storage Account A
Service State
Service State
Service State
Role
Instance
Beyond The Pure Technical
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014
Windows Azure Conference 2014