0

I have been developing an application that runs on a client computer and extracts data from a central SQL Server server.

Before the application was quite fast and running good. As a little data grew in size up to some thousands of records now the program is being too slow on client computers.

How do I check the performance of my .NET application?

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
KoolKabin
  • 17,157
  • 35
  • 107
  • 145
  • 1
    try the built in .net profiler. – Daniel A. White Sep 22 '11 at 17:34
  • 1
    possible duplicate of [What Are Some Good .NET Profilers?](http://stackoverflow.com/questions/3927/what-are-some-good-net-profilers) – Charlie Salts Sep 22 '11 at 17:34
  • 1
    Use a profiler. Since performance degraded with data size, chances are you should look into your database performance first. A few well placed indexes might do the trick - but I think your question is much too broad to be answered on Stack Overflow. Questions here should be concrete and answerable. Optimizing performance of .NET apps using databases is something you could write a book about. Try asking a more specific question, it will help you get responses. – driis Sep 22 '11 at 17:36

1 Answers1

2

I am planning to check the performance of my .net app

Get a profiler. It will tell you where your app is spending a majority of its time so that you can find the bottlenecks. These are the areas to focus on to improve your performance.

I have been developing an application that runs in client computer and extracts data from central SQL Server.

Before the application was quite fast and running good. As few data grew in size upto some thousands of records now the program is being too slow in client computers.

Sounds like a database problem (indexing, select n + 1, select fetches instead of join fetches, etc.). The profiler will tell you if your app is spending too much time waiting for the database to return results. If that is where the bottleneck is, work on that. Work on indexing your tables appropriately, and optimizing your queries (are you pulling back more columns than you need, do you have select n + 1 problem, etc.)

The salient point is this is: don't guess. Don't waste your time optimizing loops that aren't performance bottlenecks, etc. You're are observing performance that is consistent with the database being a bottleneck. Get a tool that will confirm that guess for you. Use that tool to focus your efforts.

Community
  • 1
  • 1
jason
  • 236,483
  • 35
  • 423
  • 525
  • +1, but before spending time profiling your .net code, I would just review the database, indexes, and stored procedures, with the knowledge you already have of how you're accessing the data, and ensure it is properly indexed for that access. Depending on your brand of SQL server, it may have tools to help you identify index improvements. – hatchet - done with SOverflow Sep 22 '11 at 17:57