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