开发者

ASP.NET Website seems to Periodically (each hour) Freeze/Halt/Pause/hang

开发者 https://www.devze.com 2023-01-10 03:28 出处:网络
I have a website hosted under IIS 7 on Window 2008 x64. IIS is running in 64 bit mode and the site has its own Application Pool 64 bit etc. The website appears to run fine most of the time and then al

I have a website hosted under IIS 7 on Window 2008 x64. IIS is running in 64 bit mode and the site has its own Application Pool 64 bit etc. The website appears to run fine most of the time and then all of a sudden each hour it freezes the users request. They don't get a timeout message, it just hangs and appears to wait for about 2-3 minutes before returning the page.

I have monitored the Worker Process on that application pool during and see the processor is at a very steady 25%. Memory is fine and not increasing in any scary way.

I have setup Failed 开发者_运维知识库Request Tracing to show me every issue where a request takes more than 30 seconds and yes it records it but with no errors.

Other websites in different application pools on the same server are working fine during the outage.

Any suggestion of how I might debug this issue?


Do you have IIS set to recycle worker processes on that application pool on a given schedule? You indicate you monitored it, but you didn't indicate whether or not you found it to be recycling excessively, just that the memory allocated wasn't increasing in an untoward way.

Do the IIS logs show anything unusual during the time period? Try an app like Fiddler to help debug requests to the web server.


Turn out we were using a control called i-Load to resize images. It has a function to delete temp files after 3 hours. This was locking the IO and causing out entire web-app to halt. Switch it off and all work fine now. Hope this helps someone.


Does the Application depend on a Database that has some Job running every hour?

In case the DB is under heavy load, it would take longer for the queries to execute on your DB and therefor take longer for your web-app to process the pages.


Yes IO process can block the application pool pending thread once not completed other one. So create another thread of IO process and proper handle the cancel token source.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号