我想知道我的網站內存使用情況,首先我想知道所有用戶的Session細節,這將幫助我決定是否將sessionState模式更改爲「SqlServer」或「的StateServer」。ASP.net:如何列出一個WebApplication所有用戶Session
我該怎麼辦?
感謝
我想知道我的網站內存使用情況,首先我想知道所有用戶的Session細節,這將幫助我決定是否將sessionState模式更改爲「SqlServer」或「的StateServer」。ASP.net:如何列出一個WebApplication所有用戶Session
我該怎麼辦?
感謝
我不知道這是否會幫助你解決這個問題,但你可以試試這段代碼在Session_End中的事件......假設這個事件從您的註銷過程解僱.. 這是會話變量可用的最後一個事件。
protected void Session_End(object sender, EventArgs e)
{
string strMessage = string.Empty;
for (int i = 0; i < this.Session.Count; i++)
{
strMessage += string.Format("Session of {0} Value is {1}", i.ToString(), this.Session[i].ToString());
strMessage += "/n";
}
}
this.Session.Count應該爲您提供應用程序服務器中的會話數量。只有當您的應用程序託管在單個Web服務器而不是Web服務器場中時,此解決方案纔可能保持良好。我不知道如何在Web服務器場中處理會話。
對於網站內存使用情況,我會看perfmon。如果我真的想要計算每次用戶會話中使用的內存量,我會在放棄會話時添加的時候進行計數。如果你有Session [「foo」] = bar的話,這可能會很棘手,它需要以某種方式結束。
如果您更改爲進程外會話狀態,則需要測試所有觸及會話的內容。你的會話變量跨越了進程邊界,它們需要是可序列化的,肯定有一些事情不起作用。