<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>James Edelen</title><link>http://mindsharpblogs.com/james/</link><description>My new blog</description><managingEditor>James Edelen</managingEditor><dc:language>en-US</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>James Edelen</dc:creator><title>SharePoint Stress Testing</title><link>http://mindsharpblogs.com/james/archive/2005/03/25/429.aspx</link><pubDate>Fri, 25 Mar 2005 21:11:00 GMT</pubDate><guid>http://mindsharpblogs.com/james/archive/2005/03/25/429.aspx</guid><wfw:comment>http://mindsharpblogs.com/james/comments/429.aspx</wfw:comment><comments>http://mindsharpblogs.com/james/archive/2005/03/25/429.aspx#Feedback</comments><slash:comments>91</slash:comments><wfw:commentRss>http://mindsharpblogs.com/james/comments/commentRss/429.aspx</wfw:commentRss><trackback:ping>http://mindsharpblogs.com/james/services/trackbacks/429.aspx</trackback:ping><description>Stress Testing SharePoint with Application Center Test (ACT)
&lt;BR/&gt;
Testing SharePoint is and incredibly important part of capacity planning.  There is nothing worse than spending weeks or months implementing a solution and it not being able to handle the required load.  Using a tool like ACT will enable you to test your hardware before production in order to ensure that it will perform as expected.  It will also let you more easily discover bottlenecks in your system before going live.  You can watch performance counters on your servers while stress testing to find bottlenecks.
&lt;BR/&gt;
ACT stands for Microsoft Application Center Test tool and it is included with Microsoft Visual Studio .NET Enterprise and Enterprise Architect.  When you launch it, it creates a blank project as shown below:
&lt;BR/&gt;
&lt;img src="http://www.mindsharpblogs.com/images/Stress%20Testing%20SharePoint%20with%20Application%20Center%20Test_files/image002.jpg"&gt;
&lt;BR/&gt;
Under the project (which in this case is called Application Center Article), there are 3 items – tests, results and users.  You must create a test before you can run a test.   On creation, you will be given two choices – Create an Empty test and Record a test.  Record a test is great, but it only works with SharePoint Anonymous Access, which is not ideal for stress testing, so we will create a new Blank Test.  To Create a Blank Test:
&lt;BR/&gt;
 

1.      Right-click Tests and select new Test
&lt;BR/&gt;
2.      Click Next to start the Wizard
&lt;BR/&gt;
3.      Select Create an Empty Test
&lt;BR/&gt;
4.      Select a Script Language (all examples here will be VBScript)
&lt;BR/&gt;
5.      Give the Test a Descriptive name (SharePoint Basic Test)
&lt;BR/&gt;
6.      Click Finish to complete the wizard.
&lt;BR/&gt;
 

This will create the most basic test you can have:
&lt;BR/&gt;
 

Test.SendRequest("http://localhost")
&lt;BR/&gt;
 

This command creates a request and sends it to the localhost.  It will ask the webserver for the default document and time how long it takes for the server to process the request and send the data back to the client.  You will want to edit this line to point to your SharePoint server. 
&lt;BR/&gt;
 

Now, we still need to do a couple of things to prepare a test to run against SharePoint.  First is that we need to create users.  You will want to create a batch of test users (between 50 and 100) in Active Directory.  These users should have progressive name (ie test0, test1,test2, etc) and they should all have the same password.  These users must have at least reader permissions to SharePoint. 
&lt;BR/&gt;
 

Once the users are created in active directory, they must be referenced in ACT.  As long as the users have progressive names and the same password, doing this is incredibly easy.  To associate these users with ACT do the following:
           &lt;BR/&gt;
&lt;BR/&gt;

1.      Right click the Users item and select add.
&lt;BR/&gt;
2.      Right click on the created group (new users group), select rename and change the name to a descriptive name (SharePoint Users) – this should look like the following:
&lt;BR/&gt;&lt;img src="http://www.mindsharpblogs.com/images/Stress%20Testing%20SharePoint%20with%20Application%20Center%20Test_files/image004.jpg"&gt;
&lt;BR/&gt;
3.      Click the Actions Menu, then select Generate Users
&lt;BR/&gt;
4.      Under number of users, select the number of test users you created
&lt;BR/&gt;
5.      Under User name prefix, enter the domain\username (trainsbydave\test)
&lt;BR/&gt;
6.      Under Password, enter the password for all these users.
&lt;BR/&gt;
 

It should now look as follows:
&lt;BR/&gt;&lt;img src="http://www.mindsharpblogs.com/images/Stress%20Testing%20SharePoint%20with%20Application%20Center%20Test_files/image006.jpg"&gt;
 &lt;BR/&gt;

 

Now, click ok and all the users will be associated with ACT.  It will looks as follows:
&lt;BR/&gt;&lt;img src="http://www.mindsharpblogs.com/images/Stress%20Testing%20SharePoint%20with%20Application%20Center%20Test_files/image008.jpg"&gt;
&lt;BR/&gt;
You now have all the users associated with the SharePoint users group in ACT, but we still need to link the SharePoint Users Group to the Test and set some properties on the test.  To do so:
&lt;BR/&gt;
 &lt;BR/&gt;

1.      Right click the test your created earlier and select properties
&lt;BR/&gt;
2.      On the General Tab, enter a number of simultaneous browser connections and set a test duration time.
&lt;BR/&gt;
 &lt;BR/&gt;

NOTE:  When setting the number of simultaneous browser connections, you want to start this number low (1) and slowly ramp up until you get your CPU usage to 90% on your Web Front End SharePoint Servers.
&lt;BR/&gt;
 &lt;BR/&gt;

NOTE:  Often you will want to set a 30 second warmup period in order to allow the portal to load and cache data before running the full blown test in order to get more accurate results. 
&lt;BR/&gt;
&lt;BR/&gt; 

3.      One the Users Tab, select specify users and check the group you created (SharePoint Users)
&lt;BR/&gt;
4.      Click OK
&lt;BR/&gt;
 

You are now ready to run the test.  Click the green sideways triangle on the taskbar to start the test.  You will get a screen that looks like this:
&lt;BR/&gt;&lt;img src="http://www.mindsharpblogs.com/images/Stress%20Testing%20SharePoint%20with%20Application%20Center%20Test_files/image010.jpg"&gt;
 &lt;BR/&gt;

Once the test completes (or is stopped), you will want to review the test results.  Click on the results item under the project and select the report for the test you just ran.
&lt;BR/&gt;&lt;img src="http://www.mindsharpblogs.com/images/Stress%20Testing%20SharePoint%20with%20Application%20Center%20Test_files/image012.jpg"&gt;
&lt;BR/&gt;
 &lt;BR/&gt;

Under that report, you will get some very useful information.  The most useful are:
&lt;BR/&gt;
Average requests per second:  6.92
&lt;BR/&gt;
Average time to first byte (msecs):  112.83
&lt;BR/&gt;
Average time to last byte (msecs):   120.29
&lt;BR/&gt;
 &lt;BR/&gt;

The Average requests per second should meet or exceed the number you calculate using the Operations per second equation.  The Average time to first byte is the time in milliseconds that it takes the server to generate the page and start sending it.  The Average time to last byte is the time from the request being sent until the whole page is downloaded to the client.  Using this, you can test your portal and use performance counters on your servers to monitor bottlenecks.&lt;img src ="http://mindsharpblogs.com/james/aggbug/429.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>James Edelen</dc:creator><title>SharePoint Database Explorer and SPExport</title><link>http://mindsharpblogs.com/james/archive/2005/01/20/189.aspx</link><pubDate>Thu, 20 Jan 2005 16:30:00 GMT</pubDate><guid>http://mindsharpblogs.com/james/archive/2005/01/20/189.aspx</guid><wfw:comment>http://mindsharpblogs.com/james/comments/189.aspx</wfw:comment><comments>http://mindsharpblogs.com/james/archive/2005/01/20/189.aspx#Feedback</comments><slash:comments>84</slash:comments><wfw:commentRss>http://mindsharpblogs.com/james/comments/commentRss/189.aspx</wfw:commentRss><trackback:ping>http://mindsharpblogs.com/james/services/trackbacks/189.aspx</trackback:ping><description>It would seem that my old blog provider bloggedup.com disappeared from the face of the earth, and with it all my posted files and blog entries.  Mindsharp has graciously agreed to host my new blog and the latest versions of SharePoint Database Explorer and SPExport!   I don't expect to blog as often as I would like since school is really time-consuming this year as a get everything resolved so I can graduate in June.  I got a job as a Full Time Program Manager at Microsoft for Exchange which I will start in August (but I will still participate in SharePoint activities as much as I can).  Without further ado, I give you both the binaries and source (for the first time) for SharePoint Database Explorer as well as SPExport:
&lt;br/&gt;
&lt;br/&gt;
&lt;a href="http://www.mindsharpblogs.com/images/SPExport.zip"&gt;Download SPExport Binaries&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://www.mindsharpblogs.com/images/SPExport_SRC.zip"&gt;Download SPExport Source&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://www.mindsharpblogs.com/images/SharePointDBExplore.zip"&gt;Download SharePoint Database Explorer Binaries&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://www.mindsharpblogs.com/images/SharePointDBExplore_SRC.zip"&gt;Download SharePoint Database Explorer Source &lt;/a&gt;&lt;br/&gt;&lt;img src ="http://mindsharpblogs.com/james/aggbug/189.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>