3

2 つのアプリケーションがあります。1 つ目は、参照データをプロビジョニングする Web アプリケーションです。2 つ目は、参照データが使用される ESB ベースのアプリケーションです。参照データは変更されますが、それほど頻繁ではありません。参照データをキャッシュする必要がありました。 Webアプリケーション(私は所有者ではありません)は休止状態を使用しました。しかし、私の ESB ベースのアプリケーションはそうではありませんでした。EHCache のみを使用しました。ESB アプリケーションに反映する必要がある独立した Web アプリケーションによって参照データが変更された場合。メッセージ キューを使用して実装しました。つまり、参照データが変更された場合、Web アプリケーションはメッセージ キューにメッセージを送信します。ESB アプリケーションはそのメッセージをリッスンしてクリアします。これは機能しますが、時間がかかります。Hibernate を使用して状況を改善するにはどうすればよいですか?

よろしく、 Subhendu

4

2 に答える 2

1

私が見る限り、実際には Hibernate の問題ではありません。これはキャッシング自体に関するものだと思います。したがって、いくつかの分散キャッシュ、特にInfinispanを確認することをお勧めします。このようにして、両方のアプリケーションが同じキャッシュを共有し、それを操作できます。Hibernate を使用しているだけで、キャッシュがまだ別のマシンにあり、状態が異なる場合は、同じ問題に直面します。

于 2011-01-08T10:46:36.153 に答える
0

解決策の 1 つは、Hibernate アプリで EHCache を使用することですが、それを制御できないとあなたは言います...

したがって、私が考える唯一の方法は、費用を最小限に抑え、多くの異なるキャッシュ領域を使用し、キャッシュされたデータのごく一部のみを無効にすることです (現在と同じ方法で)。

于 2011-01-08T10:46:59.087 に答える