471,354 Members | 1,461 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,354 software developers and data experts.

Server Application Unavailable in WebGarden

Howdy,

I have multiple apps running on a pair of dual-processor Win2k IIS servers,
neither of which are domain controllers. My users are experiencing fairly
frequent (10-20 / day) "Server Application Unavailable" errors. I'm using a
custom "Server Application Unavailable" page to send me an email whenever
this occurs. I also have a ProcessHistory page that leverages
ProcessModelInfo.GetHistory() to show me what's going on at the moment of
the error.

Using these tools, this is what I know:

1) The aspnet_wp is recycling every 3 minutes 23 seconds. This is not
surprising considering that the machine.config processModel timeout
attribute is set to timeout="200". Why is it set so low? I'm not quite sure.
Another developer no longer with the company set it that way in an effort to
solve another problem long ago that had to do with the server's inability to
handle more than a few simultaneous requests. Same goes for the other
non-default settings. My processModel section is included below. These
changes were made in the early days of our .NET adoption and I'm inclined to
believe that there may have been other app-level problems that may have
since been resolved.

2) Although webGarden="true" and cpuMask="0xffffffff" I'm seeing that
only 1 of the 2 processes is actually handling requests. The other is always
showing 0 requests during its (short) lifetime. Consequently, Peak Memory
never increases for that process either.

3) As mentioned above, the aspnet_wp is recycling every 3 minutes 23
seconds. The timeout period of 200 seconds equates to 3 minutes 20 seconds.
So, it's taking 3 seconds just to recycle the process. What I've found is
that the Age of the process when the "Server Application Unavailable" error
occurs is around 03:28 - 03:30 and Peak Memory is also at the higher end of
the scale relative to the others.

And this is what I don't know:

1) Why is one process never taking any requests, even though it is
configured in the processModel to do so?

2) During the time it takes for a process to recycle, shouldn't
requests go to the other process, preventing the Server App Unavailable
error?

3) What are the truly optimum processModel settings for my
environment?

Thanks very much for any assistance!

Phinneas

<processModel

enable="true"

timeout="200"

idleTimeout="200"

shutdownTimeout="00:00:05"

requestLimit="1000"

requestQueueLimit="500"

responseDeadlockInterval="00:00:30"

userName="SYSTEM"

password="AutoGenerate"

comAuthenticationLevel="Connect"

comImpersonationLevel="Impersonate"

responseRestartDeadlockInterval="Infinite"

memoryLimit="80"

webGarden="true"

cpuMask="0xffffffff"

maxWorkerThreads="25"

maxIoThreads="25"

clientConnectedCheck="0:00:05"

logLevel="All"

serverErrorMessageFile="d:\wwwroot\ServerAppUnavai l.htm"

/>
Nov 19 '05 #1
0 1155

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

reply views Thread by Mridul Buragohain | last post: by
2 posts views Thread by Petr PALAS | last post: by
1 post views Thread by Reza Sadeghi | last post: by
reply views Thread by XIAOLAOHU | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.