現在、2つのアプリサーバーがあり、それぞれにアプリケーションレベルのキャッシュがあり、データベースサーバーが一元化されています。両方のサーバーのアプリキャッシュの同期を維持するために、間にJMSブローカーを設定しました。JMSにメッセージを送信する1つのサーバーのキャッシュクリアでは、他のサーバーが登録されているため、メッセージを取得し、メッセージの内容に基づいて特定のエントリをクリアします。
このメッセージングシステムは、キャッシュエントリをクリアする際に遅延を追加するため、しばらくの間、アプリケーションレベルのキャッシュ間に不整合が生じます。
そこで、すべてのキャッシュの同期を維持するために行われるこの余分な作業をすべて回避するために、集中型キャッシュサーバーを用意することを考えました。
Ehcache / TerracottaまたはHazelcastの使用を検討しています。これらのキャッシュは、結果セット、ロック情報、およびいくつかのシステム固有の変数を保持します。
私たちに最適なキャッシュソリューションを提案してください。