在我看來,ASP.net排隊使用相同會話ID的所有請求。假設你有3頁。ASP.net會話請求排隊
Default.aspx的
protected void Page_Load(object sender, EventArgs e)
{
Session["asdf"] = "LOLZ";
}
達不到這個頁面,如果不存在顯然會創建一個新的會話。
X-AspNet-Version: 2.0.50727
Set-Cookie: ASP.NET_SessionId=ibjphuv0aiafqi453tyze345; path=/; HttpOnly
然後你打Hang.aspx
protected void Page_Load(object sender, EventArgs e)
{
Thread.Sleep(10000);
}
而且馬上你打任何其他頁面,該會話ID將被傳遞給,如果它沒有做任何事情沒有關係後,讓我們把它測試的.aspx。
加載順序如此。
Request Timeline
"GET /" |*|
"GET /Hang.aspx" |******************************************|
"GET /Test.aspx" |**************************************|
我想我的問題是如何禁用此功能。我知道讓會話狀態更具可預測性是很有用的,但在我的情況下,長時間運行的報告頁面負載正在阻止用戶執行多任務的能力。
你怎麼測試呢? Visual Studio中的IIS或Cassini開發服務器? – Kev 2010-11-30 21:43:14
Windows Server 2008,7 Professional和IIS 2010 Dev Server上的IIS。 – Novikov 2010-11-30 21:43:57