user277002
user277002

Reputation:

Very weird IIS6 asp.net website behaviour

I have a weird issue with my website. This is asp.net(.net 3.5) website hosted on a dedicated server IIS6.

Recently I got a strange behavior, the website hangs and just doesn’t reply unless I go to iis and restart either app pool or whole IIS - BUT what is the most strange thing is that in case I go to remote desktop of the server and try to access it locally it DOES work just fine.

I read couple threads about deadlocking and hanging because of memory leaks and non closed sql connections BUT why it still does work from the local?

In case there is something wrong with the code – why does it still work from locally?

In case there is some issues on the hosting side (like firewall issues) then why does iisreset help?

Any thoughts would be appreciated. Thank you!

Upvotes: 2

Views: 435

Answers (3)

user698920
user698920

Reputation: 11

We've just run into this problem, and we have a solution. IIS has two thread pools to handle requests. One thread pool is used for external requests. Another pool is used for local requests. Our problem was caused by a deadlock in backend code. Once the deadlock occurred, all external requests were queued but not serviced because all of the servicing threads were in use. Opening the website from the web server uses the other thread pool, so the requests are serviced. We were absolutley positive it was a network issue, but WinDbg proved otherwise. See here for more information: MSDN blog entry about IIS and threads

minLocalRequestFreeThreads

(Also, search for minFreeThreads to see the non-local request thread pools.)

Good luck!

Upvotes: 1

Webweasel
Webweasel

Reputation: 1

Hmm not enough info to really give you an answer, but I would look at your firewall first if it responds locally from the server. Do you have another server behind the FW like a SQL server? Try browsing from that as it will show you where the problem is.

My though would be a badly configured load balancer.

Upvotes: 0

Guffa
Guffa

Reputation: 700730

Are you sure that the website hangs for all external users, so that it's not just one single user?

The IIS only runs one page at a time for each user, so if one request is caught in an eternal loop, that single user will experience that the server has stopped completely as no pages at all work until that page times out. The server will still work as usual for other users.

You can test this by using a different browser, or starting a new instance of the same browser (possible with IE, not with Firefox).

Upvotes: 0

Related Questions