ASP stops responding

M

mjkahn

Everything runs fine for a while (weeks even), and then IIS stops responding
to (or even logging) requests for ASP pages. HTML pages are served up just
fine.

I'm running Windows 2000 SP4, and IIS 5.0. Windows Update tells me I'm up to
date on patches.

The problem has happened three times on a production server and twice on a
test server. I reproduced the problem on the test server after using the web
stress-test tool--once right after the stress-test finished, and once after
the sessions established by another stress-test run timed out. At least two
of the three times on the production server, though, there hadn't been any
real activity (new or timed-out) in several hours.

There's nothing in the Event Log or W3SVC log. No error messages anywhere
that I can find.

Once the problem starts, the IIS Console may hang. This doesn't happen right
away--once, it doesn't happen for many minutes after the problem started.

Once the problem starts, I can't use "NET STOP" to stop the WWW Publishing
Service. IISreset does clear the problem.

My primary ASP application uses some custom VB 6.0 DLLs, and stores a few
references to them in session variables. Although I know that's not advised
(see the recent thread "Storing objects in Session Variables - exactly why
not?"), I don't think it's the cause of the problem--memory and performance
don't seem to be issues. Before I embark on revising several DLLs and many
ASP pages to not store objects in session variables, I'd like to consider
alternatives, especially since I haven't found any indication that this is
causing the problem.

I'd appreciate any thoughts or suggestions you might have.

Thanks!

MJ.
 
B

Bob Barrows [MVP]

mjkahn said:
Everything runs fine for a while (weeks even), and then IIS stops
responding to (or even logging) requests for ASP pages. HTML pages
are served up just fine.
My primary ASP application uses some custom VB 6.0 DLLs, and stores a
few references to them in session variables.

You're describing one of the principle symptoms that people encounter when
they store apartment-threaded objects in session or application. I do not
understand why you are dismissing this as a possible cause out-of-hand.

For other possible causes, I think I remember seeing some other
possibilities listed in at least one of the articles at www.aspfaq.com. You
should do a search there, as well as at www.iisfaq.com.

Bob Barrows
 
M

mjkahn

Bob Barrows said:
<snip>
You're describing one of the principle symptoms that people encounter when
they store apartment-threaded objects in session or application. I do not
understand why you are dismissing this as a possible cause out-of-hand.

I'm not completely rejecting the possibility, but I don't want it to
overshadow other possibilities. If the problem could reasonably be caused by
something else, I'd like to know about that possibility before we go to the
time and expense of re-writing a lot of code.

Thanks for the links--I'll definitely check them out.

MJ.
 
M

mjkahn

Bob Barrows said:
You're describing one of the principle symptoms that people encounter when
they store apartment-threaded objects in session or application. I do not
understand why you are dismissing this as a possible cause out-of-hand.

Now that I think about it (some more), *why* is this a symptom that people
encounter when storing apartment-threaded objects in session or application
variables? I asked about storing objects in session variables in another
thread, and I think there was a consensus that the principal concerns are
memory and performance, but not hangs. (Yeah, I suppose a hang is the
ultimate performance issue, but in my reading, I haven't seen references to
hangs around this practice.)

Is the concern that, because these objects can only run in the threads that
created them, some kind of threading deadlock might occur? If so, could
someone please describe that scenario? I'd really like to understand what's
going on, both out of general curiosity and also so I can have some
confidence that any actions I take are really addressing the underlying
problem.

Thanks very much,

MJ.
 
M

Mark Schupp

This might give you a clue
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dniis/html/ixcptmon.asp
but it can be very complicated getting it set up (We had a client with
similar problems and spend 3 months proving that it the hangs did not happen
in our dlls. They cured the problem by rebuilding the web-server).

That said, I would take a serious look at what it would take to get the
objects out of the session variables. Even if you have to do a temporary
kludge (with cookies or text files or a simple database) to maintain state
it would be a good way to remove one of the variables.

I don't understand the issue enough to explain it clearly but there was
enough documentation out there about how bad an idea session-level object
are that I did not add one the product release I am working on even though
it would have removed the need to change about 1000 lines of code.
 
M

mjkahn

Mark,

Thanks for the pointer. I'm sure I'm completely overlooking something, but I
can't find a download for the Exception Monitor. The article you referred has
a heading that says, "Download Exception Monitor version 6.1 (still
available)," but there's no link to download it. And I've searched
msdn.microsoft.com/downloads for "Exception Monitor," "dbgplus.exe," and
"ixcptmon.exe," with no luck. Can you tell me where to find it?

Thanks!

MJ.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,756
Messages
2,569,534
Members
45,007
Latest member
OrderFitnessKetoCapsules

Latest Threads

Top