我有一個MVC 4(Razor)網站,並且爲會話和outputCache提供程序啓用了Azure緩存(預覽)(共同定位)。由於我啓用了它,每個Web請求都會導致大量的CPU峯值,並在調試時導致3-5秒的頁面響應時間。Azure緩存(預覽)OutputCache - 高CPU - 緩慢
我將問題縮小到了outputCache提供者。如果我在web.config中禁用它,該網站運行良好。沒有CPU尖峯。我還沒有使用頁面輸出緩存......所以不應該發生讀/寫操作。會話提供程序通過Azure緩存(預覽)正常運行。以下是我的outputCache配置。如果我禁用它,站點運行沒有CPU尖峯。有什麼想法嗎?
<caching>
<outputCache defaultProvider="DistributedCache">
<providers>
<add name="DistributedCache" type="Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache" cacheName="default" dataCacheClientName="default" />
</providers>
</outputCache>
</caching>
我也在評估Azure緩存,即使我只考慮了專用角色選項。 當您在調試它時,我假設您在開發結構上本地運行解決方案,對嗎?您是否在這些實例之間運行多個web角色的instaces並配置了高可用性(Backup Copies = 1)? – DavideB
你是否在使用緩存來做其他事情?我很想看到Web.Config文件中的'dataCacheClients'配置以及WebRole屬性頁面的「緩存」選項卡上的緩存設置。 –
我已經格式化了我的機器,安裝了VS 2012並重新安裝了Azure SDK,重新下載了我的NuGet包,問題依然存在。任何時候,我都會爲每個Web請求打開outputCache提供程序的大量CPU峯值。 –