4.7. Hot Rod Java クライアントトランザクション
JTA の トランザクション で Hot Rod クライアントを設定および使用できます。
トランザクションに参加するために、Hot Rod クライアントは、相互作用する TransactionManager と、Synchronization インターフェイスまたは XAResource インターフェイスを通じてトランザクションに参加するかどうかを要求します。
トランザクションは、クライアントが準備フェーズでエントリーへの書き込みロックを取得するという点で最適化されます。データの不整合を回避するには、トランザクションとの競合を検出 を必ずお読みください。
4.7.1. サーバーの設定 リンクのコピーリンクがクリップボードにコピーされました!
クライアントが JTA トランザクション に参加するには、サーバーのキャッシュもトランザクションである必要があります。
次のサーバー設定が必要です。それ以外の場合、トランザクションはロールバックのみになります。
-
分離レベルは
REPEATABLE_READである必要があります。 -
ロックモードは
PESSIMISTICである必要があります。今後のリリースでは、OPTIMISTICロックモードがサポートされます。 -
トランザクションモードは、
NON_XAまたはNON_DURABLE_XAである必要があります。Hot Rod トランザクションはパフォーマンスが低下するため、FULL_XAを使用しないでください。
以下に例を示します。
<replicated-cache name="hotrodReplTx"> <locking isolation="REPEATABLE_READ"/> <transaction mode="NON_XA" locking="PESSIMISTIC"/> </replicated-cache>
<replicated-cache name="hotrodReplTx">
<locking isolation="REPEATABLE_READ"/>
<transaction mode="NON_XA" locking="PESSIMISTIC"/>
</replicated-cache>
Hot Rod トランザクションには、独自の復旧メカニズムがあります。