We are running a SQL 2008 SP3 environment. Our users access the database servers through a web front-end. In April, developers had us upgrade the ASP.NET 2.0 Framework on the web servers to ASP.NET 4.5 Framework.
At that time, we began to notice that the count of active sessions as listed by sp_Who2 Active began to increase tremendously. Prior to upgrade, we'd find on a typical day that we had roughly 1,200-1,400 active sessions. After the upgrade to 4.5 Framework however, we began noticing that the active session counts continously grew throughout the day. After lunch, I'd see around 4,600 active sessions and by the time 5:00 rolled around we'd be seeing 5,800 active sessions. We have some daily processes and maintenance work that is performed around 10:00 pm and we take the database offline and stop the IIS webservers during that time. Just prior to taking it offline at 10:00 pm, we are now seeing between 7,000 and 8,000 active sessions.
I've been working a case with Microsoft for almost 3 months now without any significant progress.
I was wondering if anyone else has experienced a similar problem using ASP Session State management as supplied by the ASP.NET framework?
Does anyone know of a way to equate the tempdb..ASPStateTempSessions Session_Id value to a SPID? The ASP session id value is 24 characters long and is defined as NVARCHAR(88) where the SPID Id looks to be a SMALLINT. We can run a Fiddler trace on a web client and we can snag its session_id. I can then query the ASPStateTempSessions for that session_id value and can observe the individual row and the values of its columns. It seems like even though the users walk away from their web sessions, something inside of IIS continues to update the "Expires" column such that the row never gets removed by the ASP.NET supplied job of "DeleteExpiredSessions"
Anyone got any thoughts/experience they can share with me on this topic?
Many thanks in advance,