Could there be something that is restarting the web site? Watch the SystemCheck.aspx page for the App Init event. It should be many hours ago.
Another solution is to enable the ASP.NET State Server. This keeps your sessions active even if the web site is restarted.