2011-10-10 52 views
0

我正在尋找在.net Web App中實現緩存。基本上...我想要緩存每個頁面上的一些數據,但從不改變數據庫。system.web.caching - 緩存在哪個級別維護?

是我的緩存元素各自不同的:

  • 會議?
  • 應用程序池?
  • 服務器?

如果是會話,如果有成千上萬的用戶點擊我的網站並且每個緩存大約爲5k,這可能會失控。

如果應用程序池,和我有一個網站運行的幾個實例(說一個不同的數據庫後端,儘管在一臺服務器上),那麼我需要爲每個實例單獨的應用程序池。

任何幫助將不勝感激......我認爲這些數據可能在那裏我只是沒有合適的谷歌組合來拉起來。

回答

2

默認情況下,它存儲在服務器上的內存。這意味着它將在網站的所有用戶中共享。這也意味着如果您在Web場中運行網站,則必須使用進程外高速緩存存儲以確保場中的所有節點共享相同的高速緩存。這是MSDN上的article,它討論了這一點。

2

「每個應用程序域創建這個類的一個實例,並作爲應用程序域保持活動狀態,仍是長期有效」 - MSDN

+1

對於OP,這意味着您無需擁有單獨的應用程序池。 –