This document discusses the importance of web performance testing and provides guidance on how to test performance in the cloud. It notes that better performance leads to happier users and more revenue. It classifies different types of performance tests and recommends measuring performance before optimizing. The document suggests using both synthetic monitoring tools like WebPageTest to emulate users, and real user monitoring like Application Insights to gather live performance data from actual users. It provides an overview of Application Insights and how it can help optimize application performance on Azure.
1 of 12
Download to read offline
More Related Content
Performance in the cloud
1. v2016 September 30th 2016v2016 September 30th 2016
Performance in the Cloud
NetSuite
Sr. Web Performance Engineer
Diego Cardozo
2. v2016 September 30th 2016v2016 September 30th 2016
Agenda
• Why performance matters #perfmatters
• What to test
• How to test
• Performance on the cloud
• Test your cloud with local tools
• Test your cloud with cloud tools
• Let your users do the testing for you
3. v2016 September 30th 2016v2016 September 30th 2016
Why performance matters
Why is it important for our business?
• Google: 2% slower = 2% less searches per user
• Yahoo: 400 ms faster = 9% more traffic
• Amazon: 100ms faster = 1% more revenue
• Google uses site speed in web search ranking
Better performance Happier users More $
4. v2016 September 30th 2016v2016 September 30th 2016
What to test
Classification of performance tests
Type of test Goal
Performance Determine and validate speed
Load Verify application behavior under
normal and peak load conditions
Stress Verify application behavior beyond
normal and peak load conditions
Capacity Determine how many users and/or
transactions are supported while
meeting performance goals
5. v2016 September 30th 2016v2016 September 30th 2016
How to test
There are only 2 rules
1. Measure first, then optimize
2. Repeat rule number 1 frequently
6. v2016 September 30th 2016v2016 September 30th 2016
What to test
Have a goal – 3 alternatives
• Performance Budget
• Twitter uses “time to first Tweet”
• Google created the RAIL model
7. v2016 September 30th 2016v2016 September 30th 2016
How to test
2 approaches
• Synthetic monitoring
Emulate a user's browser, run a test case and
register response times for all requests
• Real User Monitoring (RUM)
Users passively send real performance data
8. v2016 September 30th 2016v2016 September 30th 2016
</talk>
time to see some real tools…
9. v2016 September 30th 2016v2016 September 30th 2016
Synthetic monitoring
• Quick performance tests
WebPage Test (free)
• Add load tests to your local dev suite
Visual Studio Enterprise Load tests
• Run load tests from the cloud (free/paid)
Visual Studio Team Services
10. v2016 September 30th 2016v2016 September 30th 2016
Real User Monitoring (RUM)
Application Insights – available for free on Azure
• Gather performance data from real users
• 360° view of your application
• Server level – IIS
• Application level – SDK Telemetry data
• Client level – data collection through JavaScript
11. v2016 September 30th 2016v2016 September 30th 2016
Application Insights
• Application performance monitoring
Measure performance, discover failures
• Interactive data analytics
Ad-hoc queries and deep diagnostics
• Proactive detection
Machine learning based anomaly detection
• Not just .NET
Java, Ruby, Python, PHP and Node.JS on Azure
12. v2016 September 30th 2016v2016 September 30th 2016
Resources and questions
• ݺߣs
http://bit.ly/netconf-performance
• RAIL
http://bit.ly/rail-performance
• Microsoft’s performance testing guide
http://bit.ly/microsoft-performance
dcardozo@netsuite.com
@diecard