1

我們進行了大量REST調用,並希望緩存大部分這些調用。我們目前的選擇是什麼?核心目前不支持輸出緩存,那麼我們可以使用響應緩存還是分佈式緩存?如果響應緩存,Kestrel前面的IIS反向代理可用於響應緩存場景嗎?謝謝!緩存響應消息

回答

0

ASP.NET Core支持Response Caching

輸出緩存Cache Helper Tag支持Razor視圖 - 但這對REST調用沒有幫助。

分佈式緩存InMemory緩存是來存儲成本很高,從持續等級檢索信息的好方法。這將幫助你在服務級別,但不是輸出緩存(當然,如果你願意,你可以做一些自己的中間件)。 Cache Helper Tag也依賴於這些技術。

因此,REST調用的緩存輸出降至響應緩存。簡而言之,這是關於如何在響應中設置標頭Cache-Control。如果您在您的控制器(或CacheProfile)的ResponseCache註釋中選擇ResponseCacheLocation.Any作爲Location,公衆將用作緩存控制,並允許反向代理緩存響應。但是我還沒有嘗試過,如果這是IIS和Kestrel的組合的情況。

這個Blog Post也是關於這個話題的有趣閱讀。