I need to improve performance because currently my website is too slow.

I'm currently running SQL Server 2008 Express on a dual-core server with 2 GB of memory. My app seems to be CPU-bound currently, but will adding more memory lower the CPU usage? Or should I get a 2x dual-core server? Will SQL Server 2008 Web improve efficiency?

  • You really should start by profiling your code (all code, .NET, SQL queries, etc.) and figure out which routines are really taking too long and improving them. Only when there is nothing left to improve in your software (within reason, of course) does it make sense to start upgrading your hardware. At that point, once you are ready to upgrade your hardware, you then need to profile your hardware to find your bottlenecks. What process is hogging CPU? SQL Server? IIS Application Pools? Web Services?
    – Cypher
    Nov 12 '10 at 20:53
  • I will suggest that he shouldn't wait until done profiling his code prior to monitoring the server performance. In fact, instrumenting the hardware may help him profile the code a bit.
    – mfinni
    Nov 12 '10 at 21:22
  • the cost of upgrading the hardware is minuscule compared to the man-hours of profiling...
    – steve
    Nov 14 '10 at 6:22

There are so many variables to this question that it's a bit like asking "what kind of car should I get to drive down the interstate?". Impossible to answer without more specifics.

Having said that, generally speaking, throwing ram at a problem is an inexpensive way to "boost" performance, but this won't do squat if you have a badly coded website.

  1. Answer to first question : Adding memory will not lower the CPU usage.
  2. Answer to second question : As @GregD said, there's too many variables that need to be measured for us to answer your question as-is. Is IIS running on the same server as SQL? It's usually a good idea to split the tiers and then measure the performance metrics at each tier. You can do it on a single machine though - find out which process(es) are driving up load on your CPU and see what can be done to lower the CPU usage -and maybe add more CPU if you're really sure that the code is as efficient as possible.
  3. Answer to third question : SQL Server web probably won't make a difference.
  • 1
    Note to 1: More RAM could stop paging = CPU use drop. But it might not of course.
    – gbn
    Nov 12 '10 at 20:42
  • 2
    Well, since he said CPU-bound and didn't say memory- or IO-bound, I'm assuming he meant only CPU-bound. And if he were paging, he would be more IO-bound than CPU, typically.
    – mfinni
    Nov 12 '10 at 20:51
  • i believe adding more memory for SQL server use might decrease CPU usage because more will be available for caching but i may be wrong
    – steve
    Nov 14 '10 at 6:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.