Re: Any advantage to obtaining IIS6.0 for this problem?
From: David Wang [Msft] (someone_at_online.microsoft.com)
Date: 04/20/04
- Next message: Ken Schaefer: "Re: How to configure IIS 5.0 to run ASP.NET application"
- Previous message: David Wang [Msft]: "Re: Website Authentication"
- In reply to: mko: "Any advantage to obtaining IIS6.0 for this problem?"
- Next in thread: mko: "Re: Any advantage to obtaining IIS6.0 for this problem?"
- Reply: mko: "Re: Any advantage to obtaining IIS6.0 for this problem?"
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 20 Apr 2004 00:08:58 -0700
There are two software solutions you can pursue:
1. Profile your ASP, COM, and ODBC to determine where the bottleneck resides
2. Upgrading to IIS6
#1 is guaranteed to improve your performance without requiring a HW or SW
upgrade, but it requires that you tune your own code.
#2 has a 0.001% chance to improve server performance ONLY if the upgrade
resolves the bottleneck(s) that cause your "general slowness" and "website
freezing". However, you should first profile your web app to determine
where the bottleneck(s) are. If you cannot do this, changing arbitrary
server code is not going to help in 99.999% of the case since changing
non-bottleneck code obviously does NOT address the real bottleneck and hence
cannot improve performance.
Your stated symptoms of:
1. CPU usage is very low (<10%)
2. Many concurrent ASP requests cause hangs/slowdown
3. Increasing ASPProcessorThreadMax seems to help
Suggests that you have some sort of resource contention on your web server,
possibly over some lock that is serializing your ASP/COM/ODBC code. This
situation typically results in very little concurrent work done on your
server while everyone is serialized and waiting to execute, thus causing
some of the requests to hang/slowdown while CPU usage remains very low. The
solution to this problem is to remove the lock(s) that are serializing your
web pages, but this totally depends on your code.
Are you using Application or Session variables? Are you putting COM
components in the Application or Session scope, and if so, are these
componets free-threaded? Can you time your ODBC calls to see if the network
is the bottleneck or if the execution of the query on the DB is the
bottleneck?
-- //David IIS This posting is provided "AS IS" with no warranties, and confers no rights. // "mko" <anonymous@discussions.microsoft.com> wrote in message news:7BFF44D7-6C9B-49DB-B788-B54371499CCB@microsoft.com... Hello, We are running an application over the internet using IIS5.0 and W2K server on a 3Ghz Xeon, connecting to a database on an AIX machine using ODBC. Our application has intense periods of activity with currently 100 and eventually 300 users making requests at the same time, but for only short periods of time 2 to 3 minutes once or twice each day. It is during these periods of activity that our users experience general slowness and some report the website freezing for extended periods of time, greater than 30 seconds. I have just changed the ASPProcessorThreadMax metabase property from 25 to 75 this appears to have helped users on our site at peak time, reducing the incidence of freezing. I assume from the server Blocking requests waiting for returns on fairly complex database queries, most of our ASP pages are just stubs that call COM dll objects. Some of these objects are routines that are thousands of lines long, with ten thousand lines being an upper limmit. My real question is would upgrading to IIS6.0 increase web server performance with regards these periods of short but very intense activity. At this stage we do not feel it should be necessary to load balance for such a small userbase so I'm hoping for a software solution to improved performance. If the only real lasting solution is additional hardware then eventually we shall take this approach. Another thing I am trying to determine is regards Microsoft Knowledge Base Article - 238583 which deals with tuneing the ASPProcessorThreadMax variable, has anyone had any experience with altering this setting in excess of the Microsoft recommended limit of 100. What is the downside ot increasing ASPProcessorThreadMax to say 150 or 200? Also system logs indicate that processor usage is consistently below 10%. Thanks in advance if anyone can offer any suggestions.
- Next message: Ken Schaefer: "Re: How to configure IIS 5.0 to run ASP.NET application"
- Previous message: David Wang [Msft]: "Re: Website Authentication"
- In reply to: mko: "Any advantage to obtaining IIS6.0 for this problem?"
- Next in thread: mko: "Re: Any advantage to obtaining IIS6.0 for this problem?"
- Reply: mko: "Re: Any advantage to obtaining IIS6.0 for this problem?"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|