2010/01/15

Codemash: Analyzing and Improving ASP.NET Application Performance

This was presented by James Avery.  Talks about his experience with all the different sites he’s run, including TekPub.  Overall it wasn’t an extremely informative session, but still picked up a couple things worthwhile.

  • Tricks really aren’t helpful. 
  • Don’t pre-optimize.  Build it and then measure it.
  • If you don’t want to corrupt the code base, spike it out and then measure it.
  • A great process involves Measuring, Modifying, and Measuring again.  This gives you benchmarks to verify.
  • Caching is essentially cheating.
  • Used a tool called Pylot.  It’s been written in Python.  XML based test runner to retrieve data.  It’s an extremely simplistic program.
    • If you want to know if Pylot does X, the answer is “No”.  Well, mostly.
    • Use this when nothing else is running against the system.
  • Another tool is Ants Profiler (costs money).  Or dotTrace.  Either tool for profiling your code.
    • Use in conjunction with SQL Profiler to see all the calls.
    • The reason to combine with SQL Profiler is for when you find code that’s called a lot of times and is slow, check the SQL calls that are happening repeatedly.
  • Another tool is Fiddler or other network monitoring tools.
  • Can make use of DataLoadOptions in Linq-To-SQL and the LoadWith<> method to specify tables that should be eager-loaded.  It won’t always work as Linq-to-SQL sometimes will ignore the recommendation.

1 comment:

Kevin Upchurch said...

Personally I like dotTrace(also commercial). They both offer free trials so before you buy I think you should try out either then get the one you like.