キャッシュでのリード スルーおよびライト ビハインドの有効化 (AppFabric 1.1 キャッシュ)

キャッシュで Microsoft AppFabric 1.1 for Windows Server キャッシュ リード スルー/ライト ビハインド プロバイダーを有効にする前に、まず次の 2 つの手順を完了する必要があります。

  1. DataCacheStoreProvider クラスの拡張 (AppFabric 1.1 キャッシュ)

  2. リード スルー/ライト ビハインド プロバイダーの展開 (AppFabric 1.1 キャッシュ)

これらの 2 つの手順を実行すると、キャッシュでプロバイダーを有効にする準備が整います。

Windows PowerShell を使用してプロバイダーを有効にする

プロバイダーをキャッシュと関連付けるには、Windows PowerShell コマンド New-Cache および Set-CacheConfig を使用します。これらのコマンドは、リード スルー/ライト ビハインド プロバイダーを設定する次のパラメーターをサポートします。

パラメーター 説明

ProviderType

string

プロバイダーのアセンブリ型の完全修飾名です。プロバイダーはライト ビハインド機能とリード スルー機能を実装します。その名前は大文字と小文字が区別されます。

ProviderSettings

hashtable

プロバイダーの構成設定 (接続情報など) を指定する 1 つまたは複数のキー/値ペアです。

ReadThroughEnabled

string

リード スルー機能を有効にするには、このパラメーターを使用します。既定値は false です。

WriteBehindEnabled

string

ライト ビハインド機能を有効にするには、このパラメーターを使用します。既定値は false です。

WriteBehindInterval

integer

キャッシュに書き込まれる後にキャッシュ アイテムをプロバイダーに書き込む時間までの秒数。

WriteBehindRetryCount

integer

ライト ビハインド プロバイダーへの最大再試行数です (-1 の値を指定すると、再試行回数が無限になります)。

WriteBehindRetryInterval

integer

ライト ビハインド プロバイダーへの接続に失敗した場合に、再試行と再試行の間に待機する、秒単位の再試行間隔です。

refreshNow スイッチを使用する場合、Set-CacheConfig は、これらのプロバイダーの変化に応じてキャッシュ クラスターを停止する必要はありません。これは、他のキャッシュ構成設定で、まずキャッシュ クラスターを停止する必要がある設定の変化の場合には該当しません。

ProviderType パラメーターは、プロバイダーを実装するクラスの完全修飾名を使用します。アセンブリの完全修飾名を見つける方法の 1 つとして、gacutil.exe ツールを使用して、登録済みアセンブリのグローバル アセンブリ キャッシュを検索する方法があります。これについて、次の例で説明します。

gacutil.exe /l RTProvider

これを実行すると、次のようにグローバル アセンブリ キャッシュのアセンブリの完全修飾名が返されます。

RTProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80e2cb5f6ba933f0, processorArchitecture=MSIL

この返された値に完全修飾クラス名を付加するだけで利用できます。たとえば、クラス名が Provider の場合、この例の ProviderType パラメーターは次の文字列に設定されます。

RTProvider.Provider, RTProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80e2cb5f6ba933f0

ProviderSettings パラメーターは、プロバイダーに合わせてカスタマイズされた 1 つまたは複数のキー/値のペアに設定されます。このパラメーターが必要なのは、プロバイダーでこの設定が必須の場合のみです。

次の例では、プロバイダー RTProvider を使用してリード スルーおよびライト ビハインドを有効にする Cache1 という新しいキャッシュが作成されます。

New-Cache Cache1 -ReadThroughEnabled true -WriteBehindEnabled true -WriteBehindInterval 60 -ProviderType "RTProvider.Provider, RTProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80e2cb5f6ba933f0" -ProviderSettings @{"setting1"="value1";"setting2"="value2"}

Windows PowerShell がハッシュテーブルの指定に使用する構文で、ProviderSettings パラメーターは 2 つのキー/値ペア設定を渡します。

その他の考慮事項

  • プロバイダーを有効にしたときにエラーが発生する場合、プロバイダーの登録に失敗していた可能性があります。すべてのキャッシュ ホストにプロバイダーを登録していること、および完全修飾名を正しく指定したことを確認してください。

  • 各キャッシュ ホストについてグローバル アセンブリ キャッシュでプロバイダーの DLL を更新する場合、Restart-CacheCluster または Start-CacheHost Windows PowerShell コマンドでキャッシュ サービスが登録されるまで、キャッシュ クラスターは更新されたバージョンを使用しません。

  • DataCacheItem オブジェクトはシリアル化された形式でキャッシュ クラスター内に格納されます。DataCacheItem に格納されているデータのシリアル化をプロバイダーが解除する必要がある場合、そのシリアル化されたオブジェクトに関連付けられているアセンブリは、キャッシュ ホストのグローバル アセンブリ キャッシュにも格納されている必要があります。

関連項目

概念

DataCacheStoreProvider クラスの拡張 (AppFabric 1.1 キャッシュ)
リード スルー/ライト ビハインド プロバイダーの展開 (AppFabric 1.1 キャッシュ)

  2012-03-05