2011-08-25 52 views
0

在我的應用程序,我需要一個「詞典」,這我應該使用緩存應用程序塊

(1)能夠容納大量鍵值對

(2)能夠堅持的一部分元素的文件或孤立的存儲,因爲有太多的數據存儲在內存中

(3)鍵 - 值對被允許到期或被刪除(除非我明確地)

我可以使用在我的方案中緩存應用程序塊?還是有其他圖書館推薦?

謝謝,

回答

1

您可以使用Enterprise Library執行此操作。請注意,如果應用程序池被回收,您將丟失所有緩存,因此您需要使用後備存儲對緩存進行配置/編程,以便在內存中不可用時從磁盤獲取值。

多年來,我們在許多項目中都使用過Entlib緩存。最近我們已經轉移到更新的Appfabric緩存,請參閱:http://msdn.microsoft.com/en-us/library/ff383731.aspx

對於新項目,我會推薦Appfabric緩存。

+0

謝謝。順便說一句,我想知道什麼時候緩存變得真的很大,一些鍵值對會轉到'後臺存儲'並被自動刪除在內存中,這樣進程不會被OOM異常破壞?或者,後臺存儲僅用於在進程重新啓動時初始化緩存? – Dodd

0

Entlib緩存塊保留內存中的所有內容的副本以及保留到後備存儲。所以它不適合上面列表中的#2。

相關問題