Jeremy Hancock - Performance Testing in SharePoint

advertisement
Sponsors
Gold
Performance Testing and
SharePoint
Silver
Bronze
Jeremy Hancock
http://blog.ozippy.com
@ozippy
“Time and Energy Matters”
Canberra 2011
Daily time saved going from 5s to 2s –
10 page loads per day/person
Hours per day
45.00
40.00
35.00
30.00
25.00
20.00
15.00
10.00
5.00
0.00
Hours per day
10 Users
100 Users 1000 Users 5000 Users
Canberra 2011
Some real life experiences
• Inconsistency
– Between 5 and 50 seconds to load a page
• Reliability
– Memory leaks causing app pool recycles
– Load balancer failures under stress
• Latency
– 30+ seconds to load a page at remote locations
• Poor perception
– Page ‘blocking’ causing perceived poor performance
Canberra 2011
What’ the difference?
Performance
Testing and
optimisation
Load/Stress
Testing
Canberra 2011
My approach
What
• What should I
focus on?
Optimise
• Get those
things working
to where I’m
satisfied
Load test
• Make sure that
it isn’t going to
break under
stress
Canberra 2011
Performance Testing and Optimisation
DEMO
Canberra 2011
What did we just look at?
• Tools
–
–
–
–
Yslow
Google Page Speed
Fiddler
Developer dashboard
• Asynchronous calls
• Caching
– Page Output
– Blob
– Custom
Canberra 2011
Load/Stress Testing
• What are we trying to test?
– Will the infrastructure ‘break’ under load?
– What is the maximum sustained RPS within the
target response time?
Canberra 2011
Requests Per Second (RPS)
•
•
•
•
•
A = Total # of users (1000)
B = Estimated % concurrent users (50%)
C = Average # of requests per day (20 * 10 = 200)
D = Peak ratio (x2)
E = Hours in a business day (8)
•
•
•
•
•
Requests per day = A * B * C * D
Seconds per day = E * 3600 (seconds per business day)
RPS = Requests per day/Seconds per day
RPS= (1000 x 50% x200x2)/(8x3600)
RPS= 200,000/28,800 = 6.94
http://blogs.technet.com/b/wbaer/archive/2007/07/06/requests-persecond-required-for-sharepoint-products-and-technologies.aspx
Canberra 2011
Load Testing
DEMO
Canberra 2011
Tips
•
•
•
•
•
•
Difference between F5 and clicking a link
Create warm up scripts
Don’t use think time
Keep tests discrete
Visual Studio does NOT execute JavaScript
% of new users
Canberra 2011
“Don't lower your expectations to meet your performance. Raise
your level of performance to meet your expectations. Expect the best
of yourself, and then do what is necessary to make it a reality.”
Ralph Marston




Respect the Time and Energy of your customers.
Don’t forget people that have a high latency link.
Make the effort to know what to expect and optimise.
Give your users a great perception of performance.
QUESTION AND ANSWER
Canberra 2011
Related Links
http://blog.ozippy.com/
“Would you like to save users 1,000+ hours per year?”
Canberra 2011
Download