15.3. ロックストライピングの設定 (ライブラリーモード)

ロックストライピングは、Red Hat JBoss Data Grid ではデフォルトで無効にされています。JBoss Data Grid のライブラリーモードでのロックストライピングの設定は、以下の手順で示されたように useLockStriping パラメーターを使用して行います。

手順15.1 ロックストライピングの設定 (ライブラリーモード)

<infinispan>
	<!-- Additional configuration elements here -->
	<default>
	
		<locking concurrencyLevel="${VALUE}"
			 isolationLevel="${LEVEL}"
			 lockAcquisitionTimeout="${TIME}"
			 useLockStriping="${TRUE/FALSE}"
			 writeSkewCheck="${TRUE/FALSE}" />
		<!-- Additional configuration elements here -->
	</default>
</infinispan>
  1. concurrencyLevel は、ロックストライピングが有効な場合に使用される共有ロックコレクションのサイズを指定するために使用されます。
  2. isolationLevel パラメーターは、キャッシュの分離レベルを指定します。有効な分離レベルは READ_COMMITTEDREPEATABLE_READ です。
  3. lockAcquisitionTimeout パラメーターは、ロック取得の試行がタイムアウトになった後の時間 (ミリ秒単位) を指定します。
  4. useLockStriping パラメーターは、ロックを必要とするすべてのエントリーに対して、共有ロックのプールを維持するかどうかを指定します。FALSE に設定されると、ロックがキャッシュ内のそれぞれのエントリーに対して作成されます。TRUE に設定されると、ロックストライピングは有効にされ、共有ロックは必要に応じてプールから使用されます。
  5. writeSkewCheck は、異なるトランザクションからのエントリーへの変更によりトランザクションをロールバックするかどうかを決定します。書き込みスキューを true に設定するには、isolation_levelREPEATABLE_READ に設定する必要があります。writeSkewCheck および isolation_level のデフォルト値はそれぞれ FALSEREAD_COMMITTED です。writeSkewCheck パラメーターは、OPTIMISTIC トランザクションでのみ使用でき、SIMPLE バージョン管理スキームを使用してエントリーバージョン管理を有効にする必要があります。