Saturday, April 18, 2009 10:42 PM
sanjaynarang
SharePoint (Performance, Stress ) Load Testing
Updated On 22-July-2009
Whenever I've helped my customers in performance testing and analysis of SharePoint, I get one common question: Can you tell us more about "SharePoint Load Testing" and links where I can learn more? Doing a quick web search on "SharePoint Load Testing" or "SharePoint Performance Testing" - you get all kinds of results such as data population tools, performance tuning techniques, handling large lists etc. However, it's not very easy to get results about, How to go about load testing SharePoint, what are the counters that i should measure, where can i find real life bench mark results of SharePoint? That's exactly, what I am trying to in this post. I'm trying to cover all the resources that I know about load testing. I wouldn't be covering much about Performance Tuning and Analysis.
One important thing than many people don't know is this - There’s nothing much specific to SharePoint when it comes to performance testing. SharePoint provides a few objects (e.g. for Publishing Cache, Search Indexer). Otherwise, same principles that applies to ASP.net also apply to SharePoint. Basically, we have to analyze different objects and counters (Memory, CPU, Disk, Network, CLR) in relation with required parameters such as throughput, response time, user load etc. to find out various issues. Below is the list of resources that would help you in doing that:
Official Documentation
References of Real life performance testing to get the bench mark results
There are many times when you do performance testing in your environment, but don’t know if your results are good or not. The links in this section would help you in finding that.
- 2 Million User Scale Test by Microsoft Enterprise Engineering Center: Results from scalability test that Microsoft conducted to address the concerns of a customer who wanted to deploy MOSS for 2 million internal users. The report provides a description of the goals achieved, test architecture, metrics and success criteria, testing methodology and terminology. A very useful and comprehensive resource that provides understanding of almost every aspect of performance testing in SharePoint context.
- Best Practices and Performance Paper from HP - HP Solutions Alliance Engineering (SAE) labs runs tests to ascertain performance on newly released HP server and storage technologies and also on new versions of Microsoft software that form part of the solution. This page provides technical papers having actual test results. Below is the list of different performance related papers:
- Intel Performance Testing of Windows SharePoint Services
Testing Tools
This section provides links to the tools that helps in the load testing.
Tools to generate load and test data:
Browsers Add-Ons: There are many good tools (mostly free) that integrate with your browser to analyze each and every activity happening through your browser. You can use these tools for tuning the performance of a web site by measuring parameters such as download times, caching or the number of network round trips. [Thanks to Ed Glas for suggesting some of these tools.]
- Fiddler – a very handy and light weight tool that can provide quick overview of you web site performance. It can also records scripts that you can use in VSTS. This MSDN article provides detailed information on how Fiddler can be used for performance tuning.
- neXpert - an add-on to Fiddler which automates the classic performance best practice checks and produces a HTML report on the issues found in a Fiddler capture. Also adds the ability to insert step markers in Fiddler sessions to associate network objects together (create transactions). Check out more here
- HttpWatch - an HTTP viewer and debugger. Available in commercial as well as free variants.
- FireBug – provides many web development tools. Integrates only with FireFox
- YSlow - analyzes web pages and tells you why they're slow based on the rules for high performance web sites. Integrates only with FireFox
At times, you need to focus on end-user response time. As it is difficult to simulate real life network bandwidth, it becomes difficult to test, how your application perform for end users. The following tools help you to find end-user experience
- Visual Round Trip Analyzer - Web page performance visualizer and analyzer tool. You can find Ed Glas’s blog post introducing this tool and detailed article on using the tool.
- webPageTest - webPageTest is a free over-the-web tool for performance testing a page from either Dulles, VA, USA or Wellington New Zealand. Pagetest allows you to provide the URL of a webpage to be tested provides a waterfall of your page load performance as well as a comparison against an optimization checklist.
There are other tools available for sizing and capacity planning also such as HP ProLiant Sizer for Microsoft Office SharePoint Server 2007 and SharePoint Capacity Planning Tool from Microsoft
Useful Blogs, Third Party Articles
ASP.Net performance testing and Analysis
The following links provide information on performance testing of ASP.net based web sites. Everything you wanted to know such as how to setup Performance Monitor, what counters to analyze, what should be threshold value of the counters, what to do if some counters are overshooting the threshold – you’ll get here.
SharePoint Performance Improvements
Though this post is focuses on Performance Testing, I’m also providing a few links on Performance improvements, tuning and optimazation
Hopefully, you’ll find these useful
- Sanjay