2017-01-30 92 views

回答

3

但是如果使用System.Runtime.Caching實現緩存,會發生什麼?

如果您使用MemoryCache默認實現,則會發生完全相同的情況,因爲這些項目將存儲在AppDomain的內存中。如果您希望緩存項目在應用程序池重新啓動後存活,則可能需要使用分佈式緩存系統,例如Redis或Memcached。通過使用分佈式緩存系統,您的Web羣集的所有節點都可以訪問這些緩存項目,並可能利用它們。

+0

非常感謝!我認爲System.runtime.cache保持它與appdomain分開。 有沒有辦法在MVC應用程序和** Windows **服務應用程序之間共享MemoryCache項目? –

+0

不,沒有辦法在AppDomains之間共享MemoryCache。它不是爲此目的而設計的。您將需要一個可以共享的分佈式緩存。 –