I have an asp.net page, which is taking long time to show up. So i tried Tracing.
The result which i got is attached here.
The trace shows tat page takes 5 seconds to complete the execution, where as firebug shows that the server has taken 12 seconds to complete to give the response.
Could someone pls help me to find which of the component is taking the remaining 7 seconds.
This issue happens only if I open the page after a long interval(say 30 mins). If I open the page within 5 mins, the trace timea and the firbug time are same.
The session creation is happening withing the PageLoad of the page.
I dont think applicaiton start would be executed if the IIS goes idle for 30 mins. If so, please help how to check if application start is executed for the page hit.(like how to put tracing in global.ascx or so)
Project Specifications: ASP.NET 3.5 Website Project, running in IIS 7.
Impossible to say exactly without knowing what you do in the application/session initialization methods but it looks like when the Application is Started or a new session is started something is taking some execution time and following requests take less because the application is already hot.
if you could move to .NET 4 there are built-in systems to keep the application hot so it will always be active and that long waiting time would not happen after 30 minutes, see here for more details: Auto Start Web Applications in ASP.NET 4.0
Even if you want to stay on .NET 3.5 and you do not have that feature for you, there could still be ways to keep alive the application, searching on SO or Google you will find tens of ways and articles…
anyway in case you are doing too much data loads on session start or application start, you should probably review that parts and see if that is really absolutely required in that place, in case it can be fixed there without any other issues, then you won’t need any Auto Start or keep alive at all.