14.2. ロックの設定 (ライブラリーモード)
ライブラリーモードの場合、
locking
要素とそのパラメーターは、default
要素内で設定され、各名前付きキャッシュでは、namedCache
要素内で設定されます。この設定の例は、以下のとおりです。
手順14.2 ロックの設定 (ライブラリーモード)
<infinispan> <!-- Other configuration elements here --> <default> <locking concurrencyLevel="${VALUE}" isolationLevel="${LEVEL}" lockAcquisitionTimeout="${TIME}" useLockStriping="${TRUE/FALSE}" writeSkewCheck="${TRUE/FALSE}" />
concurrencyLevel
パラメーターは、ロックコンテナーの平行性レベルを指定します。データグリッドと通信する並行スレッドの数に従ってこの値を設定します。isolationLevel
パラメーターはキャッシュの分離レベルを指定します。有効な分離レベルは、READ_COMMITTED
およびREPEATABLE_READ
です。分離レベルについてさらに詳しくは、「分離レベルについて」を参照してください。lockAcquisitionTimeout
パラメーターは、ロック取得の試行がタイムアウトになった後の時間 (ミリ秒単位) を指定します。useLockStriping
パラメーターは、ロックを必要とするすべてのエントリーに対して、共有ロックのプールを維持するかどうかを指定します。FALSE
に設定されると、ロックがキャッシュ内のそれぞれのエントリーに対して作成されます。さらに詳しくは、「ロックストライピングについて」を参照してください。writeSkewCheck
パラメーターは、isolationLevel
がREPEATABLE_READ
に設定された場合にのみ有効です。このパラメーターがFALSE
に設定された場合、書き込み時に使用中のエントリーと基礎となるエントリー間の相違があると、使用中のエントリーが基礎となるエントリーを上書きします。このパラメーターがTRUE
に設定された場合は、このような競合 (書き込みの競合など) により例外がスローされます。writeSkewCheck
パラメーターは、OPTIMISTIC
トランザクションでのみ使用でき、SIMPLE
バージョン管理スキームを使用してエントリーバージョン管理を有効にする必要があります。