Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Process Priority - IIS6 and MSDE2K
Message
 
To
09/07/2005 14:37:10
General information
Forum:
ASP.NET
Category:
Other
Environment versions
Environment:
C# 1.1
OS:
Windows Server 2003
Network:
Windows 2003 Server
Database:
MS SQL Server
Miscellaneous
Thread ID:
01030930
Message ID:
01031526
Views:
10
This message has been marked as a message which has helped to the initial question of the thread.
Hi Al,

You're probably going to have to rethink of how you do this. It's an extremely bad practice to hang an ASP.NET application thread for a long time as there's only a limited number of threads available to ASP.NET's worker thread pool (25 by default). You probably need to look into running these long requests asynchronously by using separate worker threads or offloading to a daemon type process, preferrably on another machine.

In addition you have a real issue with SQL Server. Sql Server is configurable as to how much CPU it uses. However, MSDE is not, so that might be your first option - switch to full SQL instead of MSDE which is also not optimized for heavy queries like you are likely running. You may find using a full copy of SQL Server is actually going to run your queries much faster than MSDE and at less CPU usage at that.

Finally, if you have heavy processing like this it's probably a good idea to get this stuff off the Web Server altogether and offload it to a dedicated data server, which will give you back performance on the Web Server machine. You'll still have to deal witht eh load issue of the SQL/MSDE.

There are no easy answers for this and messing with process priority is not likely to fix this sort of issue. You've basically maxed out the resources available on your machine and you need to either optimize this out of the system or scale out.

I'm sure this isn't good news <g>, but this is one of those issues in Web development where there are no magic bullets.

+++ Rick ---


>Scenario:
>
>- Server is Windows 2003 Server, P3/800, 768MB RAM, 3x10K SCSI hard drives. Upgrading hardware or purchasing a new or separate server is not an option.
>
>- Server is a lightly-loaded departmental file server, also running:
>
>- One instance of SQL Server 2000 Standard Edition. This instance supports several research databases of up to 30 - 50 GB each.
>
>- One instance of MSDE 2000 to support a very small ASP.NET application, data to max out at probably 20MB or less.
>
>- IIS6, supporting the ASP.NET app
>
>Issue: from time to time heavy research queries are run against the research databases. These can run for half an hour or longer and pin the server at 100% CPU utilization. I'm concerned that the ASP.NET app might time out while one of these queries is running.
>
>What I'd like to do is:
>
>- Set "priority" of IIS6 and the MSDE instance higher than the priority of the SQL Server Standard instance. This would hopefully "guarantee" quick response for the ASP.NET app, at the cost of (slightly) slowing down the heavy research queries.
>
>I took a brief look in WS2003 MMC but couldn't see anywhere to set "priority" for services/processes. Can anyone offer any resources on this?
+++ Rick ---

West Wind Technologies
Maui, Hawaii

west-wind.com/
West Wind Message Board
Rick's Web Log
Markdown Monster
---
Making waves on the Web

Where do you want to surf today?
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform