我們正在將一個asp.net站點移動到Azure Web角色和Azure Sql數據庫。該站點使用輸出緩存和正常的Cache [xxx](即HttpRuntime.Cache)。這些現在以經典方式存儲在Web角色實例內存中。Azure Redis緩存和用於輸出緩存的In-role緩存之間的性能差異
低懸的成果是首先開始使用分佈式緩存進行輸出緩存。我可以使用角色內緩存,既可以作爲共同位置,也可以使用專用緩存角色或Redis緩存。兩者都有輸出緩存提供程序。
這兩種(共存/專用)緩存方法之間是否存在任何性能差異?
需要考慮的一件事是,從每個服務器上的每個頁面載入,從每個服務器的頁面載入中獲取頁面的速度會比從頭創建一個頁面更快或更慢,每隔120秒每個服務器一次,但只能從本地內存獲取該頁面?
當我們想開始在分佈式緩存而不是HttpRuntime.Cache中緩存我們自己的數據(即pocos)時,哪個規模會更好?
-Mathias
Tha答案是肯定的。我繼續開始使用Azure Redis緩存和StackExchange.Redis的outputcache提供程序。相對於標準的進程內輸出緩存,速度當然是缺乏的。在Marc Gravell添加2層緩存(本地內存緩存與共享Redis中央緩存,包括基於pub/sub的緩存到期通知等)之前,在宣佈Redis包的博客文章中「承諾」存在折衷。如果我假設我的應用程序將只使用一些Web角色,我將從內部輸出緩存中受益,但是當我開始使用更多的實例時,我將從分佈式緩存中進行修改。 – MathiasR 2014-10-21 07:42:34