What are the current best practices for load testing and profiling ASP.NET web applications?

I am tasked with improving the performance of a specific page of an extremely high response time website as reported by google analytics.

Performing multiple Google searches reveals a product that ships with VS2003 called ACT (Application Center Test) that did load testing. It doesn't seem to extend anymore

I'd like to get a basic test of this page before trying to optimize it, so I can see what my changes are doing.

Profiling apps like dotTrace from Jetbrains can play it, and I've already highlighted some operations that take some time on the page using tracing.

What are the best practices and tools related to performance and load testing? I mostly try to see results, not how to accomplish them.

+1


source to share


7 replies


Here is an article showing how to profile using the VSTS profiler.

If it's broken, fix it, you should

Besides all the tools, why not try turning on the Health Monitor feature of asp.net.

It provides some good information to analyze. It emits important information related to process, memory, diskette, counters, etc. HM with VSTS download gives you a good analysis platform.

Check the link below.

How do I set up HealthMonitoring?



Also, for a link to some checklist, you can look at the following rules / tips from yahoo ....

High performance website rules / tips

HttpWatch is also a good tool for identifying specific performance issues.

HttpWatch - Link

Also check out some tips here. 10 ASP.NET performance and scalability secrets

+4


source


Take a look at the ANTS Profiler from Red Gate. I have been using a whole range of Red Gate products and am very satisfied!



+1


source


There are many different paths that you can go down. Assuming a MS environment, you can use some of the command system tools like MS Team Tester to register tests and test the load on your site. They can be customized as part of the automated build process.

The list of tools is at: http://www.softwareqatest.com/qatweb1.html#LOAD

Now you can start simple. In this case, install two firefox plugins: Firebug and YSlow for Firebug. They will provide statistics and point to issues like page size, number of requests made to get a page, etc. They will also provide recommendations for some fixes.

Alternatively, you can use unit tests to run a lot of code to see which features are hurting you.

+1


source


You can do all kinds of testing if you have a complete MS dev system with TFS and Visual Studio Team Edition. Based on what I see here

0


source


I recently had a nice .Net bug that was rampant. This sorta tool helped, but in your case I could see how it works well.

http://www.jetbrains.com/profiler/

0


source


In most cases, we used Microsoft's WCAT. If your searches are calling ACT, then this is probably the tool you want to hijack if looking for queries per second and the like. Mike Volodarsky has a good point pointing out a way to capture this.

We use it a little internally when it comes to testing our network infrastructure or a new web application, and it's incredibly flexible once you get started with it. And it seems like every demo Microsoft has made new web technologies for us, and they seem to be supplanting WCAT to showcase improvements.

This command line is operated in a way that is kind of old school, but if you want power and customization, it cannot be beaten. Especially free.

We now use DotTrace also in our own apps when trying to track down performance issues, and RedGate tools are nice too. I would definitely recommend a combination of the two. They both give you pretty solid numbers to keep track of how much of your application is slowing down, and I can't imagine life without DotTrace.

0


source


Visual Studio Test Edition (2008 or 2010) comes with a very good load testing component for ASP.NET applications. This allows you to get statistics on all perfmon statistics for the server (from fundamentals such as CPU and disk, to garbage collection and SQL locks).

Create a load test for the page and run it, saving the statistics to the database for the baseline. Subsequent runs can be compared.

0


source







All Articles