3.3. バッチ化と Java トランザクション API (JTA)
JBoss Data Grid では、バッチ化機能により、JTA トランザクションがバックエンドで開始され、スコープ内のすべての呼び出しがそれに関連付けられます。このため、バッチ化機能は単純なトランザクションマネージャー実装をバックエンドで使用します。結果として、次の動作が行われます。
- 呼び出し中に取得されたロックは、トランザクションがコミットまたはロールバックするまで保持されます。
- すべての変更は、クラスター内のすべてのノード上にあるバッチでトランザクションコミットプロセスの一部としてレプリケートされます。複数の変更が単一のトランザクション内で行われるため、レプリケーショントラフィックは小さいままになり、パフォーマンスが向上します。
- 同期レプリケーションまたは無効化を使用する場合、レプリケーションまたは無効化の失敗により、トランザクションはロールバックされます。
- JTA リソースと互換性がある
CacheLoader(JTADataSource) がトランザクションに使用された場合、JTA リソースはトランザクションに参加できます。 - トランザクションに関連するすべての設定はバッチ化にも適用されます。
バッチ化に適用できるトランザクションに関連する設定の例は次のとおりです。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
設定属性は、異なる値を使用してトランザクションおよびバッチ化の両方に使用できます。
<transaction syncRollbackPhase="false" syncCommitPhase="false" useEagerLocking="true" eagerLockSingleNode="true" />
<transaction syncRollbackPhase="false"
syncCommitPhase="false"
useEagerLocking="true"
eagerLockSingleNode="true" />
注記
バッチ化機能と JTA トランザクションはライブラリーモードでのみサポートされます。