3

We are trying to track down a performance issue on a asp.net solution on windows 2008.

  • The error page that has no database access and very little logic takes 10 sec. Other pages over 70 seconds.
  • Performance drops noticeably only at high load
  • total memory usage is low 5 GB of 16 available
  • W3wp.exe using 2.5 GB
  • several Connection_Dropped DefaultAppPool in the httperr file
  • ca. 1500 connections, Asp.net queue length is 10000
  • CPU usage is low

Anyone have an idea what I could check next?

Edit

I have now used VS 2010 to run a performance test against it in a test virtual server.

I ran 200 users with a stepped build up and no wait time.

The interesting thing was that the page time continued to increase even after the max number of users was reached. There did not appear to be any memory leaks, memory usage is flat. Time taken per page goes from 0.1 to 30.0 seconds.

All pages increase, the one that increases most is a get of the login page, no database access just a forms auth check to see if the user is logged in.

BenMorel
  • 34,448
  • 50
  • 182
  • 322
Shiraz Bhaiji
  • 64,065
  • 34
  • 143
  • 252
  • If memory and cpu are both in low usage, then I would bet on the connection. Are there many view states (which greatly increase page size)? How is the connection load on the server? – Ortiga May 16 '11 at 12:23
  • @Andre 1500 connections, most calls are sub second when it goes below 300 connections – Shiraz Bhaiji May 16 '11 at 12:44

2 Answers2

3

Upon reading your numbers (always answering too fast, am I?) I agree that you should probably profile the server-side first. See What Are Some Good .NET Profilers?


I suggest you use

  • google chrome

It has excellent profiling tools (under developer tools, Ctrl-Shift-I on my installation). I peruse

  • network
  • profiles
  • timeline

charts for the information.

Also, there is the more highlevel Y-Slow extension to Firefox. It is developed/used by yahoo and gives some rather to the point advice out of the box.

If you prefer Firefox, the Firebug extension comes pretty close to the Google developer tools

Community
  • 1
  • 1
sehe
  • 374,641
  • 47
  • 450
  • 633
  • -1. Both are totally useless to see things from the server side. Yes, it will tell you a page is slow, but it will not tell you why. A server side profiler will. – TomTom May 16 '11 at 12:39
  • @TomTom: feel free to downvote. It's not like I didn't mention that, of course. Let me shift the final remark up front for you:) – sehe May 16 '11 at 12:41
2

Ah. Wha about you just look it up?

Attach a profiler, make a profiling run, find out where the CPU spends itÄs time.

There are plenty of profilers around that offer 14 day free trials.

I wouldsay ou need more CPU - find out why ;)

TomTom
  • 61,059
  • 10
  • 88
  • 148
  • I doubt they need more CPU - .NET is pretty damned efficient and throwing horespower at a problem is seldom a long term solution - you're right that something in the pipeline is causing a problem, but whether its something that can be measured by profiling (of the code at least) is an interesting question. – Murph May 16 '11 at 12:20
  • Thanks TomTom, but the CPU usage is low – Shiraz Bhaiji May 16 '11 at 12:50