Tomcat 6にデプロイするWebアプリがあり、Hibernateを使用しています。これは、JMSキューでメッセージを受信し、Hibernateを介したDBと私のオブジェクト(Agent)の両方への変更をトリガーします。
Webリクエストは、Hibernateを介してDBにもアクセスし、共有オブジェクトにアクセスします(ConcurrentHashMap<AgentId,Agent>シングルトンによって保持されます)。
私の問題は、いくつかの異なるAgentsといくつかのテーブルを変更するJMSメッセージがAgentあり、DBトランザクションが正常に完了した場合にのみ、sの変更を利用できるようにする必要があることです。さらに、読み取りロックはパフォーマンスの危険が大きすぎるため、使用したくありません。どういうわけか実装
を考えていましたXAResourceシングルトンのインターフェースを作成し、JTAを使用してシングルトンとHibernateトランザクションの両方を管理します。
どう思いますか?合理的に聞こえますか?私は道を離れていますか?
さらに詳しい情報が必要な場合は、遠慮なくIttaiにお問い合わせください。