どのように維持Hibernateのキャッシュの整合性動アロンのJavaアプリケーション?

StackOverflow https://stackoverflow.com/questions/48733

  •  09-06-2019
  •  | 
  •  

質問

当社のデザインは、jvmでは、jboss/webapp(read/write)を管理するために使用されるデータによhibernate(jpa)をdbです。このモデルは10-15永続的なクラス3-5レベルの深さの関係。

また別のjvmのサーバーを使用しています。そのまま走行を継続的にしかない一つのdbのセッションは読み込みます。

はありませんがintra-jvmのキャッシュに関与しています手動で信号一のjvmのです。

現在のwebappの変更一部のデータ、信号のサーバーロードを変更します。何をしてはいえ、hibernateのパージデータを更新します。なかで、ただのフェッチ/合dbのないジョブを中心としたつのオブジェクトの階層の上位の階層となります。

意思いがいるかどうかは何を根本的に間違っているこのデザインする場合はこのた開運の作業hibernateの固.

おかげさ クリス

役に立ちましたか?

解決

は、Hibernateのセッション負荷の全てのデータから読み込みDBに入っていうのは、 最初のレベルのキャッシュ.一行はロードDBから、その後の分取得した連続で同じPKまでのデータから。さらに、Hibernate gaurentees参考平等のためのオブジェクトと同じPKは単一セッションで行われます。

だからこそ理解、読み取り専用サーバアプリケーションを閉じない、Hibernateのセッション。そのDBが更新され、読み込み、書き込み用に関するセッションにおいて、読み取り専用サーバーがわからない変化します。効果的に、読み取り専用積載メモリ内のコピーをデータベースを使用するコピーを取得する陳腐であります。

最もシンプルで、ベストコースの行動できる提案であり、公開セッションとして必要です。この横道全体の問題です。Hibernateセッションを想定したウィンドウを短寿命との相互作用のDBです。同意してい性能を得ないの再読み込みオブジェクト-グラフもありました。がすを測る必要があるので、自分自身を納得させることで、苦しみです。

別のオプションがあり、再開のセッションです。これにより、読み取り専用のアプリの動作データがない以上、指定された時間間隔で出ています。がんはウィンドウを読み取り専用アプリの動作ステイルデータは設計保証することで、最新のデータを最終的に).これが許容されると述べている多くのアプリケーションの開発-に必要なものを評価します。

第三のオプションが使用 第二レベルのキャッシュ の実施、使用寿命の短います。様々なキャッシュパッケージとHibernateとの相対的なメリットとデメリット.

他のヒント

クリスさんに少し戸惑いです。がわかれば、正しく、webアプリ(read/write)単独の応用(read-only?) 利用休止へのアクセスの共有データベースです。に変化するウェブアプリなのに見えるスタンドアロンアプリです。そんなことがあったのですか。

その場合、ご採用を検討異なる第二レベルのキャッシュ実行?私はサイドメニューへジャンプすることができる利用クラスタ化されたキャッシュするのではなく、双方による、ウェブアプリケーションスタンドアロンアプリ。ていると思いSwarmCache、統合Hibernateすることができるものことだったのです。

一般にも知っておきたいのコンテンツのキャッシュのない意識して活動をほかのアプリケーションによって(これからの両方のアプリを共有キャッシュ).幸運を祈っています。

私なりの視点から、変更を強調Hibernateのキャッシュることを支援する集積モードになります。ができ JBossキャッシュ または 群のキャッシュ.最初の一つは、よりよいサポートデータの同期レプリケーションおよび無効)にも対応しJTA.

それまでの設定キャッシュ同期の間でウエブアプとサーバーです。ものを見分離レベルを使用する予定の場合は、JBossます。ダウンロードいただけま使う READ_COMMITTED モードで取得したい場合は新しいデータサーバーから同一のセッション。

最も多く使用されている実践してい コンテナ管理体長 うつ以上のアプリケーションを同じコンテイナー(ie Glassfish、Tomcat、Websphereで同一のキャッシュのが組み合わせて使用しない場合は申請コンテナで利用す!!!例えば、そういwebサービスの 主要用途 読み取り-書き込みを一貫してます。

と思いを無効データを開く。のようにSingletonsなMultitons読み取り専用であることが多い 書く時.

ベルトとブレース :)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top