2010-05-25 49 views

回答

5

在InProc模式下,實時會話對象存儲在ASP.NET工作進程(aspnet_wp.exe)的RAM中。它通常是最快的,但更多的會話數據意味着Web服務器上使用的內存越多,這可能會影響性能。

在StateServer模式下,每個會話都轉換爲XML(序列化)並存儲在內存中的一個單獨的進程(aspnet_state.exe)中。此狀態服務器可以在另一臺機器上運行。

ASP.NET Session State FAQ

+0

@Murph很對。我已經重寫了我的答案 – 2010-05-25 12:04:12

+0

很酷 - 刪除了我的評論 - 確定(我知道它太遲了),in-proc和其他任何內容之間的主要區別在於in-proc與單個實例綁定 - 快速但不可伸縮 - 而其他人則爲了擴展性而交易性能,因爲同一個Web應用的多個實例(在一個或多個服務器上)可以共享相同的狀態。 – Murph 2010-05-25 17:16:11

1
  • - 用來禁用網站上的會話。
  • InProc - 會話存儲在Web服務器上的應用程序進程中。取決於所使用的IIS版本,可能是aspnet_wp.exe或w3wp.exe。
  • StateServer - 會話使用狀態服務器窗口服務存儲。
  • SQLServer的 - SQL Server數據庫來存儲會話數據
  • 定製 - 使用自定義會話狀態提供管理會話狀態。存儲可以是你在提供者中實現的任何東西

要在web.config中指定的會話狀態模式中,選擇這些值sessionState模式參數之一:

在web.config文件,<sessionState>元件位於下<configuration><system.web>元件。

相關問題