Dot-Net-Core

當我們有 IDistributedCache 時,為什麼要使用 IMemoryCache?

  • June 30, 2020

.Net Core 為兩個介面 (MemoryCacheDistributedMemoryCache) 提供了記憶體中的實現,但讓我們假設我們IDistributedCache的應用程序有一個有效的實現。

什麼時候仍然使用IMemoryCache. 在什麼情況下,它比在分佈式記憶體中記憶體數據更有幫助或更受歡迎?

我正在尋找相同的東西,並在 github 問題中找到了答案:

它們具有根本不同的語義。MemoryCache 可以儲存活動對象,分佈式記憶體不能,對象必須被序列化。分佈式記憶體可以是開箱即用的,對它的呼叫可能會失敗或需要很長時間,因此獲取和設置應該是非同步的,MemoryCache 始終在記憶體中並且速度很快。分佈式記憶體可以與儲存斷開連接,因此介面應該考慮到這一點。

https://github.com/aspnet/Caching/issues/220#issuecomment-241229013

引用自:https://stackoverflow.com/questions/59791959