-1

私のアプリケーションは、mysql データベース (データベース名 = mydb) に接続された spring 2.5 Hibernate アプリケーションです。アプリケーションはTomcat 6でホストされています-Java 6で実行されています。管理者がユーザーのプロファイルを編集できるユースケースがあります。これらの編集の履歴を別のデータベース (同じ mysql サーバー上 - データベース namne= archivedb) に保存する予定です。この場合、ユーザー編集機能は、同じ mysql データベース内の 2 つのデータベースにまたがっています。JTA トランザクションを使用する必要がありますか。IF JTA、どの実装が最適か. 私はオープンソースのものを好みます。

サントッシュ

4

1 に答える 1

0

これについては、 springsourceに関するかなり良い記事があります。ただし、これはSpring 3.0用であることに注意してください(例ではJavaベースの構成を使用しているため)が、Spring2.5用のannotation/xmlベースのセットアップに変換できる可能性があります。

ここで重要なのは、SpringのJtaTransactionManagerを使用して組み込みXAトランザクションマネージャーに委任することです。この記事では、オープンソースの組み込みXAトランザクションマネージャーの1つであるAtomikosを使用しています(「組み込み可能なトランザクションマネージャーの使用」のセクションを参照)。

ご覧のとおり、それほど複雑ではありません。Springは多くの抽象化を行います。ただし、ソリューションはかなり複雑になるため、アーキテクチャをもう一度繰り返して、分散(XA)トランザクションサポートの利点が、導入する追加の複雑さに値するかどうかを評価します。たぶん、この1つのユースケースだけで、完全なXA /2フェーズコミットトランザクションは本当に必要ないのでしょうか。

于 2012-09-04T12:30:06.320 に答える