Mi sembra che ASP.net accoda tutte le richieste che utilizzano lo stesso ID sessione. Diciamo che hai 3 pagine.Richiesta di sessione ASP.net in coda
Default.aspx
protected void Page_Load(object sender, EventArgs e)
{
Session["asdf"] = "LOLZ";
}
Colpire questa pagina sarebbe ovviamente creare una nuova sessione, se uno non esiste.
X-AspNet-Version: 2.0.50727
Set-Cookie: ASP.NET_SessionId=ibjphuv0aiafqi453tyze345; path=/; HttpOnly
Poi si colpisce Hang.aspx
protected void Page_Load(object sender, EventArgs e)
{
Thread.Sleep(10000);
}
E subito dopo aver colpito qualsiasi altra pagina che questo ID di sessione sarebbe passato a, non importa se si fa qualcosa, chiamiamolo di prova aspx.
La sequenza per il caricamento è così.
Request Timeline
"GET /" |*|
"GET /Hang.aspx" |******************************************|
"GET /Test.aspx" |**************************************|
Suppongo che la mia domanda sia come disabilitare questa funzione. Capisco che sia utile avere così che lo stato della sessione possa essere più prevedibile, tuttavia nel mio caso un carico di pagina di report di lunga durata sta uccidendo la capacità di multitasking degli utenti.
Come stai testando questo? IIS o server di sviluppo Cassini in Visual Studio? – Kev
IIS su Windows Server 2008, 7 Professional e VS 2010 Dev Server. – Novikov
Ottima domanda, non ci avevo mai pensato prima. – Kev