56

最近、ASP.NET MVC WebAPI アプリケーションでのアプリケーション データのキャッシュについて質問したところ、新しい質問にたどり着きました。ASP.NET で使用できるさまざまなキャッシュ方法の長所と短所は何ですか?

私は出くわしました:

  • メモリキャッシュ

    http://msdn.microsoft.com/en-us/library/system.runtime.caching.memorycache.aspx

  • 静的メンバー変数の使用:

    private static Northwind.SuppliersDataTable suppliers = null;
    
  • アプリケーションの状態:

     HttpContext.Current.Application["key"] ="Value"
    
  • データキャッシュ:

    HttpRuntime.Cache.Insert(
      /* key */                "key", 
      /* value */              "value", 
      /* dependencies */       null, 
      /* absoluteExpiration */ Cache.NoAbsoluteExpiration, 
      /* slidingExpiration */  Cache.NoSlidingExpiration, 
      /* priority */           CacheItemPriority.NotRemovable, 
      /* onRemoveCallback */   null);
    

私は他にもあると確信しており、それらはすべて技術的にデータをメモリに保存していることを知っています.ASP.NET MVC webapiに何を使用すればよいでしょうか?

以前の質問: アプリケーション データをメモリにキャッシュする: MVC Web API

4

3 に答える 3

4

Web API を使用する場合、キャッシングの最初の選択肢は常に、HTTP 応答でキャッシング ヘッダーを設定することです。 HttpResponseMessage.CacheControlHeader.

最後のオプションは、HttpContextまたはHttpRuntimeに依存するものにする必要があります。これにより、特定のホストに結び付けられます。Web API アプリケーションは、ホストから独立して構築する必要があります。

于 2013-09-22T12:27:12.177 に答える