Azure In-Role Cache の構成モデル

重要

Microsoft では、すべての新しい開発で Azure Redis Cache を使用することをお勧めします。 Azure Cache オファリングの選択に関する最新のドキュメントとガイダンスについては、「自分に適した Azure Cache オファリング」を参照してください。

このトピックでは、Microsoft Azure キャッシュでの構成ファイルの使用について説明します。 構成には 2 種類の設定があります。

  1. ロールの構成

  2. クライアント構成

ロールの構成

In-Role Cache では、Azure ロール内でキャッシュをホストする機能がサポートされています。 この種類のキャッシュは、クラウド サービスの一部として構成されます。 通常、これはVisual Studioで行われます。

注意

このセクションで説明する構成設定は、ロールベースのIn-Role キャッシュにのみ適用されます。 Shared Cachingでは、キャッシュへのアクセスのみがサポートされますdefault。 Shared Cachingでは、キャッシュのプロパティの変更はdefaultサポートされていません。

構成設定を理解するには、これらの設定をVisual Studioのユーザー インターフェイス オプションと関連付けるのが役立ちます。 次のスクリーンショットは、ロール プロパティ ダイアログの [キャッシュ] タブの部分です。

Caching Co-located Properites Window

In-Role キャッシュを有効にするだけでなく、1 つ以上の名前付きキャッシュを作成することもできます。 プロパティはキャッシュごとに指定します。 次のスクリーンショットは、[キャッシュ] プロパティ タブのこの部分です。

Caching Properties for Named Caches

これらのユーザー インターフェイスでの選択は、構成ファイルに格納されます。 最初に、 キャッシュ モジュールが ServiceDefinition.csdef ファイルの Imports セクションに読み込まれます。 次の XML スニペットではこの行を示します。

<Import moduleName="Caching" />

その他のすべてのIn-Roleキャッシュ設定は、ServiceConfiguration.cscfg ファイルに格納されます。 たとえば、次の ServiceConfiguration.cscfg ファイルの設定は、前に示した [キャッシュ] タブ セクションに対するものです。

  <Role name="WebRole1">
    <Instances count="2" />
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.NamedCaches" value="{&quot;caches&quot;:[{&quot;name&quot;:&quot;NamedCache1&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:0},&quot;expiration&quot;:{&quot;defaultTTL&quot;:20,&quot;isExpirable&quot;:true,&quot;type&quot;:2},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:true}},&quot;secondaries&quot;:1},{&quot;name&quot;:&quot;NamedCache2&quot;,&quot;policy&quot;:{&quot;eviction&quot;:{&quot;type&quot;:-1},&quot;expiration&quot;:{&quot;defaultTTL&quot;:25,&quot;isExpirable&quot;:true,&quot;type&quot;:1},&quot;serverNotification&quot;:{&quot;isEnabled&quot;:false}},&quot;secondaries&quot;:0}]}" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.Loglevel" value="" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.CacheSizePercentage" value="30" />
      <Setting name="Microsoft.WindowsAzure.Plugins.Caching.ConfigStoreConnectionString" value="UseDevelopmentStorage=true" />
    </ConfigurationSettings>
  </Role>

このロールの構成では、ほとんどのIn-Roleキャッシュ設定は、[ キャッシュ ] タブのオプションと簡単に関連付けられます。ただし、設定の Microsoft.WindowsAzure.Plugins.Caching.NamedCaches 読み方は難しくなります。 この設定は JSON 構文を使用して名前付きキャッシュのプロパティを記述しており、すべての二重引用符は &quot; で置き換えられています。 ロールの構成設定については、「ロール内キャッシュ ロールの構成設定 (ServiceConfiguration.cscfg)」を参照してください。

クライアント構成

キャッシュ クライアントは、Azure キャッシュにアクセスする任意のアプリケーション コードです。 コードでは、各キャッシュ クライアントは DataCacheFactory オブジェクトに関連付けられます。 ファクトリは、キャッシュへのアクセスに使用される DataCache オブジェクトを返します。 キャッシュ クライアントの実際の設定は、アプリケーションまたは web.config 構成ファイルから読み込むことができます。

次の例では、構成ファイルで指定defaultされた dataCacheClient セクションをセットアップするための関連セクションを示します。 これは、ロールベースのIn-Roleキャッシュに固有です。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="dataCacheClients" type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere" />
  </configSections>
  <dataCacheClients>
    <tracing sinkType="DiagnosticSink" traceLevel="Error" />
    <dataCacheClient name="default">
      <autoDiscover isEnabled="true" identifier="WebRole1" />
    </dataCacheClient>
  </dataCacheClients>
</configuration>

これらのクライアント構成設定については、「ロール内キャッシュ クライアント構成設定 (Web.config)」を参照してください。 ロールベースの In-Role Cache のクライアントを構成する方法を示すチュートリアルについては、「 方法: Azure SDK In-Role Cache を使用する」を参照してください。

参照

概念

Azure Cache の In-Role Cache の機能
In-Role Cache ロール構成設定 (ServiceConfiguration.cscfg)
In-Role Cache クライアントの構成設定 (Web.config)