SlideShare a Scribd company logo
1 of 18
Microsoft Azure Web Sites
Performance Testing
Lessons Learned
Christopher Woodill
cwoodill@hotmail.com
@microsofttrend
www.microsofttrends.com
December, 2014
What is Azure Web Sites?
Azure Websites is a fully
managed Platform-as-a-
Service (PaaS) that enables
you to build, deploy and
scale enterprise-grade web
Apps in seconds.
Azure Web Sites is Available in Different
Hosting Plans:
Free
Shared
Basic (Small, Medium and Large)
Standard (Small, Medium and Large)
Azure Web Site Pricing (Dec 2014)
Hosting Plan Features ~ Price per Month
Free 5 connections, shared VM, no SSL, 1 GB disk space, lots of usage quotas $0
Shared 35 connections, 1 GB disk space, shared VM, SSL support, 100 web sites per plan, some usage quotas, custom domain
support, no SLA, scale up to 10 instances
$10
Basic 350 connections, 500 web sites per plan, dedicated VM, 64 bit, custom domain SSL support, scale up to 3 instances, 10 GB
storage, no usage quotas, 99.9% SLA.
Basic Small 1 Core, 1.75 GB RAM $60
Basic Medium 2 Cores, 3.5 GB RAM $119
Basic Large 4 Cores, 7 GB RAM $235
Standard Unlimited connections, 500 web sites per plan, dedicated VM, 64 bit, custom domain SSL support, scale up to 10 instances,
50 GB storage, no usage quotas, 99.9% SLA.
Standard Small 1 Core, 1.75 GB RAM $79
Standard Medium 2 Cores, 3.5 GB RAM $157
Standard Large 4 Cores, 7 GB RAM $314
Prices subject to change…
Testing Methodology
 Implemented the ASP.NET Bakery Site in two configurations:
 Out of the box using SQL Compact (e.g. File system based database) (average page load
time unloaded is 300 ms)
 Migrated database to Azure SQL (average page load time unloaded is 29 ms)
 Apache Jmeter used to create load test to simulate requests for home page and product
pages
 Tested 1, 2, 4, 8, 12, 20, 50, 100, 200 and 500 concurrent users on all Azure Web Site scale
up options
 Tested scale out with 3 x Shared, 3 x Basic Medium and 3 x Standard Medium instances
 In each test, ran 300 page requests per thread or until ~30,000 page views
Jmeter Example
New Relic for Monitoring
Web Requests Queuing Up…
Planning for Performance
 What is your unloaded web page performance? 30 ms or 300 ms?
 How many average concurrent users do you expect? 4 or 20 or 200?
 How many peak concurrent users do you expect? 10 or 50 or 200?
 How long do you expect to run at peak? 5 minutes or 1 hour or 12 hours?
 What is an acceptable maximum page load time? 1 second? 3 seconds? 10 seconds?
 What is your target hosting spend per month?
Calculating Projected Page Views
Maximum Page Views per Day =
8,640,000 ms per day / average page load time * number of concurrent users.
For example, if we can serve 200 concurrent users a page every 27 ms that means we
have capacity to serve 675 million page views per day!
Results: Bakery Running SQL Compact
Average Page Load Speed (ms) Threads
Hosting Plan 1 2 4 8 12 20 50 100 200
Free 384 344 343 324 360 346 713 Fail Fail
Shared 399 353 345 338 383 350 404 1290 1788
Basic Small 427 434 795 1542 2246 3802 Fail Fail Fail
Basic Medium 410 387 412 415 445 655 1133 6600 11700
Basic Large 329 299 293 308 303 403 650 1543 2500
Standard Small 366 428 880 1816 2502 4341 10061 Fail Fail
Standard Medium 318 312 273 287 369 492 1212 5147 5024
Standard Large 319 292 275 288 272 350 741 1435 2644
Bakery Running SQL Compact
0
2000
4000
6000
8000
10000
12000
ONE TWO FOUR EIGHT TWELVE TWENTY FIFTY ONE HUNDRED TWO HUNDRED
AveragePageLoadTime(ms)
Azure Web Site Average Page Load (SQL Compact)
Free
Shared
Standard Small
Standard Medium
Standard Large
Results: Bakery Running SQL Azure
Average Page Load Speed (ms) Threads
Hosting Plan 1 2 4 8 12 20 50 100 200 500
Shared 42 36 29 30 26 28 29 36 49Fail
Basic Small 35 34 34 34 49 93 270 500 1115 2843
Basic Medium 30 26 26 29 29 40 108 251 534 1320
Basic Large 27 27 27 28 32 37 116 237 540 1367
Standard Small 29 25 32 35 70 136 356 717 1351 3000
Standard Medium 26 25 29 30 32 34 107 215 563 1300
Standard Large 26 26 26 27 28 31 55 118 200 620
Shared 3 Instances 45 28 30 27 28 27 27 26 27 64
Basic Medium x 3 Instances 28 27 27 27 29 29 33 53 68 124
Standard Large x 3 Instances 30 27 26 27 26 27 32 31 36 40
Bakery Running Azure SQL
0
500
1000
1500
2000
2500
3000
3500
ONE TWO FOUR EIGHT TWELVE TWENTY FIFTY ONE
HUNDRED
TWO
HUNDRED
FIVE
HUNDRED
AveragePageLoadTime(ms)
Azure Web Site Average Page Load (Azure SQL)
Shared with SQL
Standard Small with SQL
Standard Medium with SQL
Standard Large with SQL
Bakery with Scale Out
0
20
40
60
80
100
120
140
ONE TWO FOUR EIGHT TWELVE TWENTY FIFTY ONE
HUNDRED
TWO
HUNDRED
FIVE
HUNDRED
AveragePageLoadTime(ms)
Azure Web Site Average Page Load with Scaled Out Instances (Azure SQL)
Shared with SQL
Shared with SQL x 3 Instances
Basic Medium with SQL x 3 Instances
Standard Large with SQL x 3 Instances
Maximum Page Views per Hosting Plan
Hosting Plan Price
Maximum Page Views Per
Day with Azure SQL
~ Cost Per Million
Page Views
Maximum Page Views Per Day
with SQL Compact
~ Cost per Million
Page Views
Shared with SQL $10 240,000,000* $0.0054 10,693,069* $0.031
Basic Small with SQL $60 17,280,000 $0.1157 461,620 $4.333
Basic Medium with SQL $119 43,200,000 $0.0918 2,638,167 $1.504
Basic Large with SQL $235 36,455,696 $0.2149 4,287,841 $1.827
Standard Small with SQL $79 12,705,882 $0.2073 414,388 $6.355
Standard Medium with SQL $157 50,823,529 $0.1030 3,564,356 $1.468
Standard Large with SQL $314 55,741,935 $0.1878 4,937,142 $2.120
Shared with SQL x 3 $30 675,000,000* $0.0015
Basic Medium with SQL x 3 $357 348,387,096 $0.0342
Standard Medium with SQL x 3 $471 360,000,000 $0.0436
Standard Large with SQL x 3 $942 1,080,000,000 $0.0291
* Theoretical maximum only, will likely overload quota limits before achieving this target.
Real World: WordPress on Azure Web Sites
Average Page Load Speed (ms) Threads
Hosting Plan 1 2 4 8 12 20 50 100
Shared 1111 986 Fail Fail Fail Fail Fail Fail
Basic Small 1131 1617 2911 5890 8850 14700 35000 Fail
Basic Medium 1139 1155 1485 2825 4185 4268 17000 Fail
Basic Large 1021 1063 1012 1445 2186 3743 9000 17300
Shared x 3 1063 1122 1065 999 Fail Fail Fail Fail
Basic Medium x 3 1132 1119 1219 1355 1650 2377 5747 0
Standard Large x 3 1116 1127 1259 1050 1130 1250 3059 6253
Key Conclusions: Performance
 Baseline performance of page makes a big difference in ability to scale and the size of hosting plan
required to maintain performance under load.
 Azure SQL ran flawlessly without any bottlenecks under all scenarios – web server was always slower
than the DB.
 Shared works awesome – it scaled better than Standard Large! However, it can be quickly overloaded
because of quota restrictions.
 Shared x 3 instances means also 3x the usage quotas – good approach to handling sites that need
additional CPU or memory.
 Performance of Basic and Standard are similar – you’re paying more for features, not performance.
 Basic Small and Standard Small are too small to scale – performance degrades very quickly.
 Scaling out number of instances improves load better than scaling up to the next size of VM. Basic
Medium x 3 performed significantly better than Standard Large x 1.
Key Conclusions: Economics
 Even running SQL Compact on Basic Small, we could still crank out more than 400K page views per day!
 Baseline performance makes a big difference in $$ / million page views. Investments in optimization can lower your
hosting costs by allowing you to run leaner and cheaper.
 Only use what you absolutely need to sustain your traffic – you can always scale up to a more expensive plan and you
only pay for when you’re using the higher performance.
 Clear winner in delivering pages per $$ is Shared hosting plan, if you can live within the quotas.
 Shared x 3 at $30 / month scales much better than a single Standard Large at $314.00 / month and quotas are tripled!
 Basic / Standard Medium more economical than Basic / Standard Small under load because they can scale better for
the price.
 Scaling out instances is cheaper than scaling up to a bigger VM – e.g. Basic Medium X 3 instances performed much
better than a single Standard Large VM and is only a little bit more expensive ($357 / month vs. $314 / month).
 Scaling out instances is also better because it supports auto-scaling. No auto-scaling support for moving up and down
sizes of VMs.
Thanks!
Christopher Woodill
 cwoodill@hotmail.com
 @microsofttrend
 www.microsofttrends.com

More Related Content

What's hot

Introduction to SQL Server Internals: How to Think Like the Engine
Introduction to SQL Server Internals: How to Think Like the EngineIntroduction to SQL Server Internals: How to Think Like the Engine
Introduction to SQL Server Internals: How to Think Like the EngineBrent Ozar
 
How to Make SQL Server Go Faster
How to Make SQL Server Go FasterHow to Make SQL Server Go Faster
How to Make SQL Server Go FasterBrent Ozar
 
40+ tips to use Postman more efficiently
40+ tips to use Postman more efficiently40+ tips to use Postman more efficiently
40+ tips to use Postman more efficientlypostmanclient
 
The Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with RubyThe Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with RubyRobert Dempsey
 
Amazon (AWS) Aurora
Amazon (AWS) AuroraAmazon (AWS) Aurora
Amazon (AWS) AuroraPGConf APAC
 
High Performance Hibernate JavaZone 2016
High Performance Hibernate JavaZone 2016High Performance Hibernate JavaZone 2016
High Performance Hibernate JavaZone 2016Vlad Mihalcea
 
An Overview of Node.js
An Overview of Node.jsAn Overview of Node.js
An Overview of Node.jsAyush Mishra
 
Apache spark with akka couchbase code by bhawani
Apache spark with akka couchbase code by bhawaniApache spark with akka couchbase code by bhawani
Apache spark with akka couchbase code by bhawaniBhawani N Prasad
 
Deep Dive on Amazon EC2 Instances (March 2017)
Deep Dive on Amazon EC2 Instances (March 2017)Deep Dive on Amazon EC2 Instances (March 2017)
Deep Dive on Amazon EC2 Instances (March 2017)Julien SIMON
 
Amazon Aurora Let's Talk About Performance
Amazon Aurora Let's Talk About PerformanceAmazon Aurora Let's Talk About Performance
Amazon Aurora Let's Talk About PerformanceDanilo Poccia
 
Spring Boot and REST API
Spring Boot and REST APISpring Boot and REST API
Spring Boot and REST API07.pallav
 
Ajax & Reverse Ajax Presenation
Ajax & Reverse Ajax PresenationAjax & Reverse Ajax Presenation
Ajax & Reverse Ajax PresenationRishabh Garg
 
Build A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million UsersBuild A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million UsersAmazon Web Services
 
Dynamic SQL: How to Build Fast Multi-Parameter Stored Procedures
Dynamic SQL: How to Build Fast Multi-Parameter Stored ProceduresDynamic SQL: How to Build Fast Multi-Parameter Stored Procedures
Dynamic SQL: How to Build Fast Multi-Parameter Stored ProceduresBrent Ozar
 
Making (Almost) Any Database Faster and Cheaper with Caching
Making (Almost) Any Database Faster and Cheaper with CachingMaking (Almost) Any Database Faster and Cheaper with Caching
Making (Almost) Any Database Faster and Cheaper with CachingAmazon Web Services
 
Getting Started with ElastiCache for Redis
Getting Started with ElastiCache for RedisGetting Started with ElastiCache for Redis
Getting Started with ElastiCache for RedisAmazon Web Services
 
Building a Fast, Reliable SQL Server for kCura Relativity
Building a Fast, Reliable SQL Server for kCura RelativityBuilding a Fast, Reliable SQL Server for kCura Relativity
Building a Fast, Reliable SQL Server for kCura RelativityBrent Ozar
 
Deep Dive on Elastic Load Balancing
Deep Dive on Elastic Load BalancingDeep Dive on Elastic Load Balancing
Deep Dive on Elastic Load BalancingAmazon Web Services
 

What's hot (19)

Introduction to SQL Server Internals: How to Think Like the Engine
Introduction to SQL Server Internals: How to Think Like the EngineIntroduction to SQL Server Internals: How to Think Like the Engine
Introduction to SQL Server Internals: How to Think Like the Engine
 
How to Make SQL Server Go Faster
How to Make SQL Server Go FasterHow to Make SQL Server Go Faster
How to Make SQL Server Go Faster
 
40+ tips to use Postman more efficiently
40+ tips to use Postman more efficiently40+ tips to use Postman more efficiently
40+ tips to use Postman more efficiently
 
The Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with RubyThe Future is Now: Leveraging the Cloud with Ruby
The Future is Now: Leveraging the Cloud with Ruby
 
Amazon (AWS) Aurora
Amazon (AWS) AuroraAmazon (AWS) Aurora
Amazon (AWS) Aurora
 
High Performance Hibernate JavaZone 2016
High Performance Hibernate JavaZone 2016High Performance Hibernate JavaZone 2016
High Performance Hibernate JavaZone 2016
 
An Overview of Node.js
An Overview of Node.jsAn Overview of Node.js
An Overview of Node.js
 
AWS EC2 and ELB troubleshooting
AWS EC2 and ELB troubleshootingAWS EC2 and ELB troubleshooting
AWS EC2 and ELB troubleshooting
 
Apache spark with akka couchbase code by bhawani
Apache spark with akka couchbase code by bhawaniApache spark with akka couchbase code by bhawani
Apache spark with akka couchbase code by bhawani
 
Deep Dive on Amazon EC2 Instances (March 2017)
Deep Dive on Amazon EC2 Instances (March 2017)Deep Dive on Amazon EC2 Instances (March 2017)
Deep Dive on Amazon EC2 Instances (March 2017)
 
Amazon Aurora Let's Talk About Performance
Amazon Aurora Let's Talk About PerformanceAmazon Aurora Let's Talk About Performance
Amazon Aurora Let's Talk About Performance
 
Spring Boot and REST API
Spring Boot and REST APISpring Boot and REST API
Spring Boot and REST API
 
Ajax & Reverse Ajax Presenation
Ajax & Reverse Ajax PresenationAjax & Reverse Ajax Presenation
Ajax & Reverse Ajax Presenation
 
Build A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million UsersBuild A Website on AWS for Your First 10 Million Users
Build A Website on AWS for Your First 10 Million Users
 
Dynamic SQL: How to Build Fast Multi-Parameter Stored Procedures
Dynamic SQL: How to Build Fast Multi-Parameter Stored ProceduresDynamic SQL: How to Build Fast Multi-Parameter Stored Procedures
Dynamic SQL: How to Build Fast Multi-Parameter Stored Procedures
 
Making (Almost) Any Database Faster and Cheaper with Caching
Making (Almost) Any Database Faster and Cheaper with CachingMaking (Almost) Any Database Faster and Cheaper with Caching
Making (Almost) Any Database Faster and Cheaper with Caching
 
Getting Started with ElastiCache for Redis
Getting Started with ElastiCache for RedisGetting Started with ElastiCache for Redis
Getting Started with ElastiCache for Redis
 
Building a Fast, Reliable SQL Server for kCura Relativity
Building a Fast, Reliable SQL Server for kCura RelativityBuilding a Fast, Reliable SQL Server for kCura Relativity
Building a Fast, Reliable SQL Server for kCura Relativity
 
Deep Dive on Elastic Load Balancing
Deep Dive on Elastic Load BalancingDeep Dive on Elastic Load Balancing
Deep Dive on Elastic Load Balancing
 

Viewers also liked

OneDrive for Business Best Practices
OneDrive for Business Best PracticesOneDrive for Business Best Practices
OneDrive for Business Best PracticesChris Woodill
 
Scaling to 30,000 Requests Per Second and Beyond with MongoDB
Scaling to 30,000 Requests Per Second and Beyond with MongoDBScaling to 30,000 Requests Per Second and Beyond with MongoDB
Scaling to 30,000 Requests Per Second and Beyond with MongoDBmchesnut
 
Scaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDB
Scaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDBScaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDB
Scaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDBMongoDB
 
70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONS
70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONS70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONS
70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONSDotNetCampus
 
Ebook 70 533 implementing microsoft infrastructure solution
Ebook 70 533 implementing microsoft infrastructure solutionEbook 70 533 implementing microsoft infrastructure solution
Ebook 70 533 implementing microsoft infrastructure solutionMahesh Dahal
 
SharePoint Folders vs. Metadata Best Practices
SharePoint Folders vs. Metadata Best PracticesSharePoint Folders vs. Metadata Best Practices
SharePoint Folders vs. Metadata Best PracticesChris Woodill
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

Viewers also liked (12)

OneDrive for Business Best Practices
OneDrive for Business Best PracticesOneDrive for Business Best Practices
OneDrive for Business Best Practices
 
Scaling to 30,000 Requests Per Second and Beyond with MongoDB
Scaling to 30,000 Requests Per Second and Beyond with MongoDBScaling to 30,000 Requests Per Second and Beyond with MongoDB
Scaling to 30,000 Requests Per Second and Beyond with MongoDB
 
Scaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDB
Scaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDBScaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDB
Scaling Crittercism to 30,000 Requests Per Second and Beyond with MongoDB
 
70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONS
70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONS70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONS
70-534: ARCHITECTING MICROSOFT AZURE SOLUTIONS
 
Ebook 70 533 implementing microsoft infrastructure solution
Ebook 70 533 implementing microsoft infrastructure solutionEbook 70 533 implementing microsoft infrastructure solution
Ebook 70 533 implementing microsoft infrastructure solution
 
Intro to cloud computing
Intro to cloud computingIntro to cloud computing
Intro to cloud computing
 
Microsoft Azure Overview
Microsoft Azure OverviewMicrosoft Azure Overview
Microsoft Azure Overview
 
Asp net core in azure
Asp net core in azureAsp net core in azure
Asp net core in azure
 
SharePoint Folders vs. Metadata Best Practices
SharePoint Folders vs. Metadata Best PracticesSharePoint Folders vs. Metadata Best Practices
SharePoint Folders vs. Metadata Best Practices
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Similar to Azure Web Sites Performance Testing: Lessons on Scaling and Cost

Windows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongWindows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongSpiffy
 
Performace optimization (increase website speed)
Performace optimization (increase website speed)Performace optimization (increase website speed)
Performace optimization (increase website speed)clickramanm
 
Taking SharePoint to the Cloud
Taking SharePoint to the CloudTaking SharePoint to the Cloud
Taking SharePoint to the CloudAaron Saikovski
 
B4 - The TCO of cloud applications
B4 - The TCO of cloud applicationsB4 - The TCO of cloud applications
B4 - The TCO of cloud applicationsAmazon Web Services
 
AWS Summit Stockholm 2014 – B5 – The TCO of cloud applications
AWS Summit Stockholm 2014 – B5 – The TCO of cloud applicationsAWS Summit Stockholm 2014 – B5 – The TCO of cloud applications
AWS Summit Stockholm 2014 – B5 – The TCO of cloud applicationsAmazon Web Services
 
Data storage for the cloud ce11
Data storage for the cloud ce11Data storage for the cloud ce11
Data storage for the cloud ce11CloudExpoEurope
 
Data storage for the cloud ce11
Data storage for the cloud ce11Data storage for the cloud ce11
Data storage for the cloud ce11aseager
 
Data storage for the cloud ce11
Data storage for the cloud ce11Data storage for the cloud ce11
Data storage for the cloud ce11aseager
 
MSDN Benefits for Azure DevTest
MSDN Benefits for Azure DevTest MSDN Benefits for Azure DevTest
MSDN Benefits for Azure DevTest Shawn Gorrell
 
Introduction to Microsoft Azure
Introduction to Microsoft AzureIntroduction to Microsoft Azure
Introduction to Microsoft AzureGuy Barrette
 
Azure Disks Overview - Azure Disks Overview -Azure Disks Overview
Azure Disks Overview - Azure Disks Overview -Azure Disks OverviewAzure Disks Overview - Azure Disks Overview -Azure Disks Overview
Azure Disks Overview - Azure Disks Overview -Azure Disks Overviewssuser6d7b1f3
 
Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Jovan Popovic
 
Three Ways to Slash your Enterprise Cloud Storage Cost
Three Ways to Slash your Enterprise Cloud Storage Cost Three Ways to Slash your Enterprise Cloud Storage Cost
Three Ways to Slash your Enterprise Cloud Storage Cost Buurst
 
Implement SQL Server on an Azure VM
Implement SQL Server on an Azure VMImplement SQL Server on an Azure VM
Implement SQL Server on an Azure VMJames Serra
 
http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151xlight
 
(DAT312) Using Amazon Aurora for Enterprise Workloads
(DAT312) Using Amazon Aurora for Enterprise Workloads(DAT312) Using Amazon Aurora for Enterprise Workloads
(DAT312) Using Amazon Aurora for Enterprise WorkloadsAmazon Web Services
 
All about Azure workshop deck
All about Azure workshop deckAll about Azure workshop deck
All about Azure workshop deckAlexey Bokov
 
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...Amazon Web Services
 

Similar to Azure Web Sites Performance Testing: Lessons on Scaling and Cost (20)

Amazon Aurora (Debanjan Saha) - AWS DB Day
Amazon Aurora (Debanjan Saha) - AWS DB DayAmazon Aurora (Debanjan Saha) - AWS DB Day
Amazon Aurora (Debanjan Saha) - AWS DB Day
 
Windows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongWindows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan Wong
 
Performace optimization (increase website speed)
Performace optimization (increase website speed)Performace optimization (increase website speed)
Performace optimization (increase website speed)
 
Taking SharePoint to the Cloud
Taking SharePoint to the CloudTaking SharePoint to the Cloud
Taking SharePoint to the Cloud
 
B4 - The TCO of cloud applications
B4 - The TCO of cloud applicationsB4 - The TCO of cloud applications
B4 - The TCO of cloud applications
 
AWS Summit Stockholm 2014 – B5 – The TCO of cloud applications
AWS Summit Stockholm 2014 – B5 – The TCO of cloud applicationsAWS Summit Stockholm 2014 – B5 – The TCO of cloud applications
AWS Summit Stockholm 2014 – B5 – The TCO of cloud applications
 
Data storage for the cloud ce11
Data storage for the cloud ce11Data storage for the cloud ce11
Data storage for the cloud ce11
 
Data storage for the cloud ce11
Data storage for the cloud ce11Data storage for the cloud ce11
Data storage for the cloud ce11
 
Data storage for the cloud ce11
Data storage for the cloud ce11Data storage for the cloud ce11
Data storage for the cloud ce11
 
MSDN Benefits for Azure DevTest
MSDN Benefits for Azure DevTest MSDN Benefits for Azure DevTest
MSDN Benefits for Azure DevTest
 
Introduction to Microsoft Azure
Introduction to Microsoft AzureIntroduction to Microsoft Azure
Introduction to Microsoft Azure
 
Azure Disks Overview - Azure Disks Overview -Azure Disks Overview
Azure Disks Overview - Azure Disks Overview -Azure Disks OverviewAzure Disks Overview - Azure Disks Overview -Azure Disks Overview
Azure Disks Overview - Azure Disks Overview -Azure Disks Overview
 
Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019Azure SQL Managed Instance - SqlBits 2019
Azure SQL Managed Instance - SqlBits 2019
 
Three Ways to Slash your Enterprise Cloud Storage Cost
Three Ways to Slash your Enterprise Cloud Storage Cost Three Ways to Slash your Enterprise Cloud Storage Cost
Three Ways to Slash your Enterprise Cloud Storage Cost
 
Implement SQL Server on an Azure VM
Implement SQL Server on an Azure VMImplement SQL Server on an Azure VM
Implement SQL Server on an Azure VM
 
http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151http://www.hfadeel.com/Blog/?p=151
http://www.hfadeel.com/Blog/?p=151
 
(DAT312) Using Amazon Aurora for Enterprise Workloads
(DAT312) Using Amazon Aurora for Enterprise Workloads(DAT312) Using Amazon Aurora for Enterprise Workloads
(DAT312) Using Amazon Aurora for Enterprise Workloads
 
All about Azure workshop deck
All about Azure workshop deckAll about Azure workshop deck
All about Azure workshop deck
 
Azure IaaS
Azure IaaSAzure IaaS
Azure IaaS
 
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
Consolidate MySQL Shards Into Amazon Aurora Using AWS Database Migration Serv...
 

Recently uploaded

Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLimonikaupta
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Sheetaleventcompany
 
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.CarlotaBedoya1
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxellan12
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceDelhi Call girls
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGAPNIC
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...Neha Pandey
 
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.soniya singh
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663Call Girls Mumbai
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.soniya singh
 

Recently uploaded (20)

Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRLLucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
 
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
INDIVIDUAL ASSIGNMENT #3 CBG, PRESENTATION.
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
 
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
@9999965857 🫦 Sexy Desi Call Girls Laxmi Nagar 💓 High Profile Escorts Delhi 🫶
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOG
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
 
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Sarai Rohilla Escort Service Delhi N.C.R.
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
 

Azure Web Sites Performance Testing: Lessons on Scaling and Cost

  • 1. Microsoft Azure Web Sites Performance Testing Lessons Learned Christopher Woodill cwoodill@hotmail.com @microsofttrend www.microsofttrends.com December, 2014
  • 2. What is Azure Web Sites? Azure Websites is a fully managed Platform-as-a- Service (PaaS) that enables you to build, deploy and scale enterprise-grade web Apps in seconds. Azure Web Sites is Available in Different Hosting Plans: Free Shared Basic (Small, Medium and Large) Standard (Small, Medium and Large)
  • 3. Azure Web Site Pricing (Dec 2014) Hosting Plan Features ~ Price per Month Free 5 connections, shared VM, no SSL, 1 GB disk space, lots of usage quotas $0 Shared 35 connections, 1 GB disk space, shared VM, SSL support, 100 web sites per plan, some usage quotas, custom domain support, no SLA, scale up to 10 instances $10 Basic 350 connections, 500 web sites per plan, dedicated VM, 64 bit, custom domain SSL support, scale up to 3 instances, 10 GB storage, no usage quotas, 99.9% SLA. Basic Small 1 Core, 1.75 GB RAM $60 Basic Medium 2 Cores, 3.5 GB RAM $119 Basic Large 4 Cores, 7 GB RAM $235 Standard Unlimited connections, 500 web sites per plan, dedicated VM, 64 bit, custom domain SSL support, scale up to 10 instances, 50 GB storage, no usage quotas, 99.9% SLA. Standard Small 1 Core, 1.75 GB RAM $79 Standard Medium 2 Cores, 3.5 GB RAM $157 Standard Large 4 Cores, 7 GB RAM $314 Prices subject to change…
  • 4. Testing Methodology  Implemented the ASP.NET Bakery Site in two configurations:  Out of the box using SQL Compact (e.g. File system based database) (average page load time unloaded is 300 ms)  Migrated database to Azure SQL (average page load time unloaded is 29 ms)  Apache Jmeter used to create load test to simulate requests for home page and product pages  Tested 1, 2, 4, 8, 12, 20, 50, 100, 200 and 500 concurrent users on all Azure Web Site scale up options  Tested scale out with 3 x Shared, 3 x Basic Medium and 3 x Standard Medium instances  In each test, ran 300 page requests per thread or until ~30,000 page views
  • 6. New Relic for Monitoring Web Requests Queuing Up…
  • 7. Planning for Performance  What is your unloaded web page performance? 30 ms or 300 ms?  How many average concurrent users do you expect? 4 or 20 or 200?  How many peak concurrent users do you expect? 10 or 50 or 200?  How long do you expect to run at peak? 5 minutes or 1 hour or 12 hours?  What is an acceptable maximum page load time? 1 second? 3 seconds? 10 seconds?  What is your target hosting spend per month?
  • 8. Calculating Projected Page Views Maximum Page Views per Day = 8,640,000 ms per day / average page load time * number of concurrent users. For example, if we can serve 200 concurrent users a page every 27 ms that means we have capacity to serve 675 million page views per day!
  • 9. Results: Bakery Running SQL Compact Average Page Load Speed (ms) Threads Hosting Plan 1 2 4 8 12 20 50 100 200 Free 384 344 343 324 360 346 713 Fail Fail Shared 399 353 345 338 383 350 404 1290 1788 Basic Small 427 434 795 1542 2246 3802 Fail Fail Fail Basic Medium 410 387 412 415 445 655 1133 6600 11700 Basic Large 329 299 293 308 303 403 650 1543 2500 Standard Small 366 428 880 1816 2502 4341 10061 Fail Fail Standard Medium 318 312 273 287 369 492 1212 5147 5024 Standard Large 319 292 275 288 272 350 741 1435 2644
  • 10. Bakery Running SQL Compact 0 2000 4000 6000 8000 10000 12000 ONE TWO FOUR EIGHT TWELVE TWENTY FIFTY ONE HUNDRED TWO HUNDRED AveragePageLoadTime(ms) Azure Web Site Average Page Load (SQL Compact) Free Shared Standard Small Standard Medium Standard Large
  • 11. Results: Bakery Running SQL Azure Average Page Load Speed (ms) Threads Hosting Plan 1 2 4 8 12 20 50 100 200 500 Shared 42 36 29 30 26 28 29 36 49Fail Basic Small 35 34 34 34 49 93 270 500 1115 2843 Basic Medium 30 26 26 29 29 40 108 251 534 1320 Basic Large 27 27 27 28 32 37 116 237 540 1367 Standard Small 29 25 32 35 70 136 356 717 1351 3000 Standard Medium 26 25 29 30 32 34 107 215 563 1300 Standard Large 26 26 26 27 28 31 55 118 200 620 Shared 3 Instances 45 28 30 27 28 27 27 26 27 64 Basic Medium x 3 Instances 28 27 27 27 29 29 33 53 68 124 Standard Large x 3 Instances 30 27 26 27 26 27 32 31 36 40
  • 12. Bakery Running Azure SQL 0 500 1000 1500 2000 2500 3000 3500 ONE TWO FOUR EIGHT TWELVE TWENTY FIFTY ONE HUNDRED TWO HUNDRED FIVE HUNDRED AveragePageLoadTime(ms) Azure Web Site Average Page Load (Azure SQL) Shared with SQL Standard Small with SQL Standard Medium with SQL Standard Large with SQL
  • 13. Bakery with Scale Out 0 20 40 60 80 100 120 140 ONE TWO FOUR EIGHT TWELVE TWENTY FIFTY ONE HUNDRED TWO HUNDRED FIVE HUNDRED AveragePageLoadTime(ms) Azure Web Site Average Page Load with Scaled Out Instances (Azure SQL) Shared with SQL Shared with SQL x 3 Instances Basic Medium with SQL x 3 Instances Standard Large with SQL x 3 Instances
  • 14. Maximum Page Views per Hosting Plan Hosting Plan Price Maximum Page Views Per Day with Azure SQL ~ Cost Per Million Page Views Maximum Page Views Per Day with SQL Compact ~ Cost per Million Page Views Shared with SQL $10 240,000,000* $0.0054 10,693,069* $0.031 Basic Small with SQL $60 17,280,000 $0.1157 461,620 $4.333 Basic Medium with SQL $119 43,200,000 $0.0918 2,638,167 $1.504 Basic Large with SQL $235 36,455,696 $0.2149 4,287,841 $1.827 Standard Small with SQL $79 12,705,882 $0.2073 414,388 $6.355 Standard Medium with SQL $157 50,823,529 $0.1030 3,564,356 $1.468 Standard Large with SQL $314 55,741,935 $0.1878 4,937,142 $2.120 Shared with SQL x 3 $30 675,000,000* $0.0015 Basic Medium with SQL x 3 $357 348,387,096 $0.0342 Standard Medium with SQL x 3 $471 360,000,000 $0.0436 Standard Large with SQL x 3 $942 1,080,000,000 $0.0291 * Theoretical maximum only, will likely overload quota limits before achieving this target.
  • 15. Real World: WordPress on Azure Web Sites Average Page Load Speed (ms) Threads Hosting Plan 1 2 4 8 12 20 50 100 Shared 1111 986 Fail Fail Fail Fail Fail Fail Basic Small 1131 1617 2911 5890 8850 14700 35000 Fail Basic Medium 1139 1155 1485 2825 4185 4268 17000 Fail Basic Large 1021 1063 1012 1445 2186 3743 9000 17300 Shared x 3 1063 1122 1065 999 Fail Fail Fail Fail Basic Medium x 3 1132 1119 1219 1355 1650 2377 5747 0 Standard Large x 3 1116 1127 1259 1050 1130 1250 3059 6253
  • 16. Key Conclusions: Performance  Baseline performance of page makes a big difference in ability to scale and the size of hosting plan required to maintain performance under load.  Azure SQL ran flawlessly without any bottlenecks under all scenarios – web server was always slower than the DB.  Shared works awesome – it scaled better than Standard Large! However, it can be quickly overloaded because of quota restrictions.  Shared x 3 instances means also 3x the usage quotas – good approach to handling sites that need additional CPU or memory.  Performance of Basic and Standard are similar – you’re paying more for features, not performance.  Basic Small and Standard Small are too small to scale – performance degrades very quickly.  Scaling out number of instances improves load better than scaling up to the next size of VM. Basic Medium x 3 performed significantly better than Standard Large x 1.
  • 17. Key Conclusions: Economics  Even running SQL Compact on Basic Small, we could still crank out more than 400K page views per day!  Baseline performance makes a big difference in $$ / million page views. Investments in optimization can lower your hosting costs by allowing you to run leaner and cheaper.  Only use what you absolutely need to sustain your traffic – you can always scale up to a more expensive plan and you only pay for when you’re using the higher performance.  Clear winner in delivering pages per $$ is Shared hosting plan, if you can live within the quotas.  Shared x 3 at $30 / month scales much better than a single Standard Large at $314.00 / month and quotas are tripled!  Basic / Standard Medium more economical than Basic / Standard Small under load because they can scale better for the price.  Scaling out instances is cheaper than scaling up to a bigger VM – e.g. Basic Medium X 3 instances performed much better than a single Standard Large VM and is only a little bit more expensive ($357 / month vs. $314 / month).  Scaling out instances is also better because it supports auto-scaling. No auto-scaling support for moving up and down sizes of VMs.
  • 18. Thanks! Christopher Woodill  cwoodill@hotmail.com  @microsofttrend  www.microsofttrends.com