2015-07-11 47 views
-1

我正在使用ASP.NET Web窗體和我有一個應用程序持久對象實例在會話變量,但當幾個客戶端連接時,我有一個大問題在性能上,是否存在避免會話變量的選項?asp.net webform - 如何堅持一個對象實例beetwen頁面

我需要對象實例,因爲我只需要修改內存中的數據並將數據保存在客戶端需求的數據庫中。

在此先感謝

回答

0

您有幾種選擇 - 兩塊來立即想到是要麼卸載您的會話狀態,內存不足的選項,如SQL或分佈式緩存(Redis的,例如 - 雖然技術上這些只是從Web服務器的角度來看內存不足)或將對象狀態推入頁面的視圖狀態。

在這兩個選項中,視圖狀態可能會具有較少的開發開銷,但是將會話狀態卸載到像Redis這樣的內容通常是從最佳實踐角度來看的首選,因爲它可以讓您更好地控制對象狀態的有效時間並減少多少你不得不傳送給客戶。這對於敏感數據來說是雙重的。

請參閱下面的鏈接瞭解每個選項的更多信息。

https://msdn.microsoft.com/en-us/library/75x4ha6s.aspx

https://msdn.microsoft.com/en-us/library/z1hkazw7.aspx

https://en.wikipedia.org/wiki/Distributed_cache